diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2011-07-13 23:20:53 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2011-07-13 23:20:53 -0700 |
commit | ca4aa9359160557f8103639fc3c0ccb16c6ba8d2 (patch) | |
tree | 5b939640079b6fe042c9509fb0d03bb72495aa2a /src/editfns.c | |
parent | 5f8f9cc26998b1b74d9ac5c8b68000d53aae31cc (diff) |
* image.c: Improve checking for integer overflow.
(check_image_size): Assume that f is nonnull, since
it is always nonnull in practice. This is one less thing to
worry about when checking for integer overflow later.
(x_check_image_size): New function, which checks for integer
overflow issues inside X.
(x_create_x_image_and_pixmap, xbm_read_bitmap_data): Use it.
This removes the need for a memory_full check.
(xbm_image_p): Rewrite to avoid integer multiplication overflow.
(Create_Pixmap_From_Bitmap_Data, xbm_load): Use x_check_image_size.
(xbm_read_bitmap_data): Change locals back to 'int', since
their values must fit in 'int'.
(xpm_load_image, png_load, tiff_load):
Invoke x_create_x_image_and_pixmap earlier,
to avoid much needless work if the image is too large.
(tiff_load): Treat overly large images as if
x_create_x_image_and_pixmap failed, not as malloc failures.
(gs_load): Use x_check_image_size.
Diffstat (limited to 'src/editfns.c')
0 files changed, 0 insertions, 0 deletions