From: Gerd Moellmann Date: Tue, 31 Jul 2001 14:40:50 +0000 (+0000) Subject: (Finsert_file_contents): Don't treat a return value X-Git-Tag: emacs-pretest-21.0.105~343 X-Git-Url: https://code.delx.au/gnu-emacs/commitdiff_plain/2bd2273e7b54afb820a5897f3c1f368a64dfca97?hp=7642acca1e2fdbca53a065065d9d28c7c8de40d0 (Finsert_file_contents): Don't treat a return value of 0 from emacs_read as an IO error. --- diff --git a/src/fileio.c b/src/fileio.c index e09fac7e79..a8edc2f75b 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -3863,14 +3863,18 @@ actually used.") while (total_read < trial) { nread = emacs_read (fd, buffer + total_read, trial - total_read); - if (nread <= 0) + if (nread < 0) error ("IO error reading %s: %s", XSTRING (orig_filename)->data, emacs_strerror (errno)); + else if (nread == 0) + break; total_read += nread; } + /* Scan this bufferful from the end, comparing with the Emacs buffer. */ bufpos = total_read; + /* Compare with same_at_start to avoid counting some buffer text as matching both at the file's beginning and at the end. */ while (bufpos > 0 && same_at_end > same_at_start