Mercurial > emacs
changeset 102752:9e5b3ff07060
(Finsert_file_contents): Don't limit size to INT_MAX/4.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sat, 28 Mar 2009 02:06:06 +0000 |
parents | fd3d23f156f5 |
children | b6116169967f |
files | src/ChangeLog src/fileio.c |
diffstat | 2 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Fri Mar 27 18:40:04 2009 +0000 +++ b/src/ChangeLog Sat Mar 28 02:06:06 2009 +0000 @@ -1,3 +1,7 @@ +2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4. + 2009-03-27 Jan Djärv <jan.h.d@swipnet.se> * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
--- a/src/fileio.c Fri Mar 27 18:40:04 2009 +0000 +++ b/src/fileio.c Sat Mar 28 02:06:06 2009 +0000 @@ -3300,7 +3300,11 @@ overflow. The calculations below double the file size twice, so check that it can be multiplied by 4 safely. */ if (XINT (end) != st.st_size - || st.st_size > INT_MAX / 4) + /* Actually, it should test either INT_MAX or LONG_MAX + depending on which one is used for EMACS_INT. But in + any case, in practice, this test is redundant with the + one above. + || st.st_size > INT_MAX / 4 */) error ("Maximum buffer size exceeded"); /* The file size returned from stat may be zero, but data