Commit d1639c87 authored by Claudio Saavedra's avatar Claudio Saavedra Committed by Claudio Saavedra
Browse files

Set a GDK_ERROR_CORRUPT_IMAGE error if the loader is closed while still

2008-03-11  Claudio Saavedra  <csaavedra@alumnos.utalca.cl>

	* io-bmp.c: (gdk_pixbuf__bmp_image_stop_load): Set a
	GDK_ERROR_CORRUPT_IMAGE error if the loader is closed while
	still reading the headers.  (#505085)



svn path=/trunk/; revision=19757
parent 9aa1be5a
2008-03-11 Claudio Saavedra <csaavedra@alumnos.utalca.cl>
* io-bmp.c: (gdk_pixbuf__bmp_image_stop_load): Set a
GDK_ERROR_CORRUPT_IMAGE error if the loader is closed while
still reading the headers. (#505085)
2008-03-11 Claudio Saavedra <csaavedra@alumnos.utalca.cl>
* io-bmp.c: (DecodeHeader): Check for the BMP header magic numbers
......
......@@ -693,6 +693,8 @@ gdk_pixbuf__bmp_image_begin_load(GdkPixbufModuleSizeFunc size_func,
*/
static gboolean gdk_pixbuf__bmp_image_stop_load(gpointer data, GError **error)
{
gboolean retval = TRUE;
struct bmp_progressive_state *context =
(struct bmp_progressive_state *) data;
......@@ -707,10 +709,20 @@ static gboolean gdk_pixbuf__bmp_image_stop_load(gpointer data, GError **error)
if (context->pixbuf)
g_object_unref(context->pixbuf);
if (context->read_state == READ_STATE_HEADERS) {
if (error && *error == NULL) {
g_set_error (error,
GDK_PIXBUF_ERROR,
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
_("Premature end-of-file encountered"));
}
retval = FALSE;
}
g_free(context->buff);
g_free(context);
return TRUE;
return retval;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment