Subject: Re: bug#15100: Division by zero in bytevector->uint-list

From: Mark H Weaver <[email-masked]>
Date: Fri, 16 Aug 2013 23:19:15 -0400

Göran Weinholt <[email-masked]> writes:

> the bytevector->uint-list procedure from (rnrs) can crash Guile through
> a division by zero:
>
> scheme@(guile-user)> (import (rnrs))
> scheme@(guile-user)> (bytevector->uint-list #vu8(0) 'x 0)
> Floating point exception
>
> The same happens with bytevector->sint-list.

Fixed in 088cfb7d761b01a2620d78f10e8dbcaa07485a32.

> These procedures also do not check that the length of the bytevector
> is divisible by the size.

I don't think we can fix this in stable-2.0, because some existing code
might depend on our current permissive behavior.  However, I fixed it on
the master branch in c099201da1de71652b9791fb0a3a863b6d3c355d.

    Thanks!
      Mark