20 lines
736 B
Diff
20 lines
736 B
Diff
diff -urNp old/plug-ins/common/file-psp.c new/plug-ins/common/file-psp.c
|
|
--- old/plug-ins/common/file-psp.c 2018-01-04 12:04:14.636811394 +0100
|
|
+++ new/plug-ins/common/file-psp.c 2018-01-04 12:12:41.717877789 +0100
|
|
@@ -1777,6 +1777,15 @@ load_image (const gchar *filename,
|
|
{
|
|
block_start = ftell (f);
|
|
|
|
+ if (block_start + block_total_len > st.st_size)
|
|
+ {
|
|
+ g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
|
+ _("Could not open '%s' for reading: %s"),
|
|
+ gimp_filename_to_utf8 (filename),
|
|
+ _("invalid block size"));
|
|
+ goto error;
|
|
+ }
|
|
+
|
|
if (id == PSP_IMAGE_BLOCK)
|
|
{
|
|
if (block_number != 0)
|