diff options
author | Andy Wingo <wingo@pobox.com> | 2010-05-02 13:15:22 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-05-02 13:15:22 +0200 |
commit | 384dce46bf2313f9c429984b4e7cefe9d14fbcee (patch) | |
tree | 5f5b6c0274515201c8df2367cb27e970bb68d27e /libguile/vm-i-scheme.c | |
parent | ba2d960396c692986ee42274dc7f1d7eb72a9c89 (diff) | |
download | guile-384dce46bf2313f9c429984b4e7cefe9d14fbcee.tar.gz |
add underflow check in make-array
* libguile/vm-i-scheme.c (make-array): Check for underflow before making
the array.
Diffstat (limited to 'libguile/vm-i-scheme.c')
-rw-r--r-- | libguile/vm-i-scheme.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libguile/vm-i-scheme.c b/libguile/vm-i-scheme.c index d2bd43514..fb1af1106 100644 --- a/libguile/vm-i-scheme.c +++ b/libguile/vm-i-scheme.c @@ -386,6 +386,7 @@ VM_DEFINE_INSTRUCTION (163, make_array, "make-array", 3, -1, 1) len = (len << 8) + FETCH (); POP (shape); SYNC_REGISTER (); + PRE_CHECK_UNDERFLOW (len); ret = scm_from_contiguous_array (shape, sp - len + 1, len); DROPN (len); PUSH (ret); |