diff options
-rw-r--r-- | src/ChangeLog | 4 | ||||
-rw-r--r-- | src/fileio.c | 10 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 0b17cb4c4da..edfce7a9240 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2011-04-03 Paul Eggert <eggert@cs.ucla.edu> + + * fileio.c (Finsert_file_contents): Make EOF condition clearer. + 2011-04-02 Paul Eggert <eggert@cs.ucla.edu> * fileio.c (Finsert_file_contents): Avoid signed integer overflow. diff --git a/src/fileio.c b/src/fileio.c index 18aaf4562da..dec53968947 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -3607,6 +3607,7 @@ variable `last-coding-system-used' to the coding system actually used. */) EMACS_INT bufpos; unsigned char *decoded; EMACS_INT temp; + EMACS_INT this = 0; int this_count = SPECPDL_INDEX (); int multibyte = ! NILP (BVAR (current_buffer, enable_multibyte_characters)); Lisp_Object conversion_buffer; @@ -3633,7 +3634,6 @@ variable `last-coding-system-used' to the coding system actually used. */) /* try is reserved in some compilers (Microsoft C) */ EMACS_INT trytry = min (total - how_much, READ_BUF_SIZE - unprocessed); - EMACS_INT this; /* Allow quitting out of the actual I/O. */ immediate_quit = 1; @@ -3642,11 +3642,7 @@ variable `last-coding-system-used' to the coding system actually used. */) immediate_quit = 0; if (this <= 0) - { - if (this < 0) - how_much = this; - break; - } + break; how_much += this; @@ -3669,7 +3665,7 @@ variable `last-coding-system-used' to the coding system actually used. */) /* At this point, HOW_MUCH should equal TOTAL, or should be <= 0 if we couldn't read the file. */ - if (how_much < 0) + if (this < 0) error ("IO error reading %s: %s", SDATA (orig_filename), emacs_strerror (errno)); |