From b36f6804b0168f113aab2e150384bd329d877a75 Mon Sep 17 00:00:00 2001 From: Kevin Ryde Date: Tue, 27 Jul 2004 23:39:15 +0000 Subject: [PATCH] (scm_array_set_x): For svect, use scm_num2short to get range check, previously silently truncated inum to short. --- libguile/unif.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libguile/unif.c b/libguile/unif.c index 4721fc875..4eeb51e49 100644 --- a/libguile/unif.c +++ b/libguile/unif.c @@ -1339,8 +1339,8 @@ SCM_DEFINE (scm_array_set_x, "array-set!", 2, 0, 1, = scm_num2long (obj, SCM_ARG2, FUNC_NAME); break; case scm_tc7_svect: - SCM_ASRTGO (SCM_INUMP (obj), badobj); - ((short *) SCM_UVECTOR_BASE (v))[pos] = SCM_INUM (obj); + ((short *) SCM_UVECTOR_BASE (v))[pos] + = scm_num2short (obj, SCM_ARG2, FUNC_NAME); break; #ifdef HAVE_LONG_LONGS case scm_tc7_llvect: