diff options
| author | Paul Eggert | 2011-05-15 22:08:59 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-05-15 22:08:59 -0700 |
| commit | 2b4560a850d2ea0767d0a3c4db19e4468f61b4eb (patch) | |
| tree | ca99d199897a9289dfff5a1f492341402d79ae69 /src/ChangeLog | |
| parent | cb93f9bef01e95b17b3d7b8786c103505355d98c (diff) | |
| download | emacs-2b4560a850d2ea0767d0a3c4db19e4468f61b4eb.tar.gz emacs-2b4560a850d2ea0767d0a3c4db19e4468f61b4eb.zip | |
* character.c (lisp_string_width): Check for string overflow.
Use EMACS_INT, not int, for string indexes and lengths; in
particular, 2nd arg is now EMACS_INT, not int. Do not crash if
the resulting string length overflows an EMACS_INT; instead,
report a string overflow if no precision given. When checking for
precision exhaustion, use a check that cannot possibly have
integer overflow. (Bug#8675)
* character.h (lisp_string_width): Adjust to new signature.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 178ebf78932..944a5dfbecb 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,14 @@ | |||
| 1 | 2011-05-16 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2011-05-16 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | * character.c (lisp_string_width): Check for string overflow. | ||
| 4 | Use EMACS_INT, not int, for string indexes and lengths; in | ||
| 5 | particular, 2nd arg is now EMACS_INT, not int. Do not crash if | ||
| 6 | the resulting string length overflows an EMACS_INT; instead, | ||
| 7 | report a string overflow if no precision given. When checking for | ||
| 8 | precision exhaustion, use a check that cannot possibly have | ||
| 9 | integer overflow. (Bug#8675) | ||
| 10 | * character.h (lisp_string_width): Adjust to new signature. | ||
| 11 | |||
| 3 | * alloc.c (string_overflow): New function. | 12 | * alloc.c (string_overflow): New function. |
| 4 | (Fmake_string): Use it. This doesn't change behavior, but saves | 13 | (Fmake_string): Use it. This doesn't change behavior, but saves |
| 5 | a few bytes and will simplify future changes. | 14 | a few bytes and will simplify future changes. |