Hi,

SZAVAI Gyula <[EMAIL PROTECTED]> writes:

> guile-1.8-20061126
>
>    [EMAIL PROTECTED](#t #t)
> ==> [EMAIL PROTECTED](#t #t)
>
>
> --- orig/libguile/unif.c        2006-11-29 00:28:41.655614400 +0100
> +++ mod/libguile/unif.c 2006-11-29 00:43:33.678280000 +0100
> @@ -2669,7 +2669,7 @@
>     }
>
>   if (got_it)
> -    *resp = res;
> +    *resp = sign*res;
>   return c;
> }
>
> @@ -2753,6 +2753,9 @@
>            {
>              c = scm_getc (port);
>              c = read_decimal_integer (port, c, &len);
> +              if (len < 0)
> +                scm_i_input_error (NULL, port,
> +                            "array length must be non-negative", SCM_EOL);
>              s = scm_list_2 (s, scm_from_ssize_t (lbnd+len-1));
>            }

I committed this one to both HEAD and 1.8.

While I was at it, I found a bug in `array-in-bounds?': it wouldn't work
for arrays with rank > 1 and different lower bounds for each dimension.
I committed a fix, too (and test case).

Thanks!

Ludovic.


_______________________________________________
Bug-guile mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-guile

Reply via email to