diff options
| author | Paul Eggert | 2011-07-28 14:31:33 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-07-28 14:31:33 -0700 |
| commit | ca9ce8f2cb9d3d70c4e7d9dc9299ea4d5d71dfbc (patch) | |
| tree | e4e42ca73a6f80d97ff9a3f1b224699e1336bc43 /src/ChangeLog | |
| parent | 7bd4252299e9ed464cac124ac1ff718c98396df2 (diff) | |
| download | emacs-ca9ce8f2cb9d3d70c4e7d9dc9299ea4d5d71dfbc.tar.gz emacs-ca9ce8f2cb9d3d70c4e7d9dc9299ea4d5d71dfbc.zip | |
Integer and memory overflow fixes for display code.
* dispextern.h (struct glyph_pool.nglyphs): Now ptrdiff_t, not int.
* dispnew.c (adjust_glyph_matrix, realloc_glyph_pool, scrolling_window):
Check for overflow in size calculations.
(line_draw_cost, realloc_glyph_pool, add_row_entry):
Don't assume glyph table len fits in int.
(struct row_entry.bucket, row_entry_pool_size, row_entry_idx)
(row_table_size): Now ptrdiff_t, not int.
(scrolling_window): Avoid overflow in size calculations.
Don't update size until allocation succeeds.
* fns.c (concat): Check for overflow in size calculations.
(next_almost_prime): Verify NEXT_ALMOST_PRIME_LIMIT.
* lisp.h (RANGED_INTEGERP, TYPE_RANGED_INTEGERP): New macros.
(NEXT_ALMOST_PRIME_LIMIT): New constant.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 78b3b97b2d7..d7d32e90089 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,20 @@ | |||
| 1 | 2011-07-28 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2011-07-28 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | Integer and memory overflow fixes for display code. | ||
| 4 | * dispextern.h (struct glyph_pool.nglyphs): Now ptrdiff_t, not int. | ||
| 5 | * dispnew.c (adjust_glyph_matrix, realloc_glyph_pool, scrolling_window): | ||
| 6 | Check for overflow in size calculations. | ||
| 7 | (line_draw_cost, realloc_glyph_pool, add_row_entry): | ||
| 8 | Don't assume glyph table len fits in int. | ||
| 9 | (struct row_entry.bucket, row_entry_pool_size, row_entry_idx) | ||
| 10 | (row_table_size): Now ptrdiff_t, not int. | ||
| 11 | (scrolling_window): Avoid overflow in size calculations. | ||
| 12 | Don't update size until allocation succeeds. | ||
| 13 | * fns.c (concat): Check for overflow in size calculations. | ||
| 14 | (next_almost_prime): Verify NEXT_ALMOST_PRIME_LIMIT. | ||
| 15 | * lisp.h (RANGED_INTEGERP, TYPE_RANGED_INTEGERP): New macros. | ||
| 16 | (NEXT_ALMOST_PRIME_LIMIT): New constant. | ||
| 17 | |||
| 3 | * composite.c: Integer overflow fixes. | 18 | * composite.c: Integer overflow fixes. |
| 4 | (get_composition_id): Check for overflow in glyph length calculations. | 19 | (get_composition_id): Check for overflow in glyph length calculations. |
| 5 | 20 | ||