The read-delimited! function from section 7 of the
manual has the following strange behavior:
calling it as follows
14> (define buffer "abcdefghi")
14> (read-delimited! "abc" buffer)
it returns, iff the first sign written is an 'a' a 'b', or a 'c'.
if the first sign is not a sign from the char-set argument
("abc") it won't return at all, but exits the scsh after a
few seconds by a heap overflow.
14> (define buffer "abcdefghi")
14> (read-delimited! "abc" buffer)
x
Scheme48 heap overflow
Process scheme exited abnormally with code 255
Logged In: YES
user_id=17553
The buffer in the example is immutable but
(%)read-delimited! failed to reject it in the first place.
Fixed