diff options
| author | Paul Eggert | 2011-04-02 00:40:13 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-04-02 00:40:13 -0700 |
| commit | a37c69bff68c15220b7f737a721ff7e1d3291b9e (patch) | |
| tree | 0f1fcc8b7c60afcc2f8a276dc1fe72984c985d08 /src | |
| parent | 328ab8e7b550b2d3ae188c0ddfb174db32b0387c (diff) | |
| download | emacs-a37c69bff68c15220b7f737a721ff7e1d3291b9e.tar.gz emacs-a37c69bff68c15220b7f737a721ff7e1d3291b9e.zip | |
* minibuf.c (read_minibuf_noninteractive): Use size_t for sizes.
Check for integer overflow on size calculations.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 3 | ||||
| -rw-r--r-- | src/minibuf.c | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index a470962d74d..73be884837f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | 2011-04-02 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2011-04-02 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | * minibuf.c (read_minibuf_noninteractive): Use size_t for sizes. | ||
| 4 | Check for integer overflow on size calculations. | ||
| 5 | |||
| 3 | * buffer.c (Fprevious_overlay_change): Remove var that is set | 6 | * buffer.c (Fprevious_overlay_change): Remove var that is set |
| 4 | but not used. | 7 | but not used. |
| 5 | 8 | ||
diff --git a/src/minibuf.c b/src/minibuf.c index 4adf665f8f4..54cb9c1acd7 100644 --- a/src/minibuf.c +++ b/src/minibuf.c | |||
| @@ -229,7 +229,7 @@ read_minibuf_noninteractive (Lisp_Object map, Lisp_Object initial, | |||
| 229 | Lisp_Object defalt, | 229 | Lisp_Object defalt, |
| 230 | int allow_props, int inherit_input_method) | 230 | int allow_props, int inherit_input_method) |
| 231 | { | 231 | { |
| 232 | int size, len; | 232 | size_t size, len; |
| 233 | char *line, *s; | 233 | char *line, *s; |
| 234 | Lisp_Object val; | 234 | Lisp_Object val; |
| 235 | 235 | ||
| @@ -244,6 +244,8 @@ read_minibuf_noninteractive (Lisp_Object map, Lisp_Object initial, | |||
| 244 | && (len = strlen (line), | 244 | && (len = strlen (line), |
| 245 | len == size - 1 && line[len - 1] != '\n')) | 245 | len == size - 1 && line[len - 1] != '\n')) |
| 246 | { | 246 | { |
| 247 | if ((size_t) -1 / 2 < size) | ||
| 248 | memory_full (); | ||
| 247 | size *= 2; | 249 | size *= 2; |
| 248 | line = (char *) xrealloc (line, size); | 250 | line = (char *) xrealloc (line, size); |
| 249 | } | 251 | } |