From 2aff577f5cffcf0cf3ca31b939443fad4b304977 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 15 Mar 2016 04:51:02 -0700 Subject: Bugfix: set errno to zero in stdio_unget_byte. * stream.c (stdio_unget_byte): Set errno to zero before ungetc, because ungetc probably almost certainly doesn't set errno when it fails. --- stream.c | 1 + 1 file changed, 1 insertion(+) (limited to 'stream.c') diff --git a/stream.c b/stream.c index 60247af7..e9ba359b 100644 --- a/stream.c +++ b/stream.c @@ -719,6 +719,7 @@ static val stdio_unget_byte(val stream, int byte) { struct stdio_handle *h = coerce(struct stdio_handle *, stream->co.handle); + errno = 0; return h->f != 0 && ungetc(byte, coerce(FILE *, h->f)) != EOF ? num_fast(byte) : stdio_maybe_error(stream, lit("pushing back byte into")); -- cgit v1.2.3