]> Pileus Git - ~andy/gtk/commitdiff
Bug 517233 – Calling gdk_pixbuf_loader_close causes "GError set over the
authorMatthias Clasen <mclasen@redhat.com>
Sun, 7 Sep 2008 05:19:29 +0000 (05:19 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Sun, 7 Sep 2008 05:19:29 +0000 (05:19 +0000)
2008-09-06  Matthias Clasen  <mclasen@redhat.com>

        Bug 517233 – Calling gdk_pixbuf_loader_close causes "GError set over
        the top of a previous GError" warning

        * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Don't overwrite
        errors. Reported by Andrey Tsyvarev

svn path=/trunk/; revision=21309

gdk-pixbuf/ChangeLog
gdk-pixbuf/gdk-pixbuf-loader.c

index eb46945d44504019d81843fe95f7954b9ad8f797..9d5f62a152d44b98c12b495b73c2ba69becd31e0 100644 (file)
@@ -1,3 +1,11 @@
+2008-09-06  Matthias Clasen  <mclasen@redhat.com>
+
+       Bug 517233 – Calling gdk_pixbuf_loader_close causes "GError set over
+       the top of a previous GError" warning
+
+       * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Don't overwrite
+       errors. Reported by Andrey Tsyvarev
+
 2008-09-05  Sebastien Bacher  <seb128@ubuntu.com>
 
        * gdk-pixbuf-io.c: (gdk_pixbuf_load_module_unlocked):
index ce6dc411d776a1eda76b8db5ef9d83e4f1880180..9ec8125997ff519368a330e634a6c02314d3b0ec 100644 (file)
@@ -726,8 +726,12 @@ gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
                                         * here, since we might not get an error in the
                                         * gdk_pixbuf_get_file_info() case
                                         */
-                                       if (tmp)
-                                               g_propagate_error (error, tmp);
+                                       if (tmp) {
+                                               if (error && *error == NULL)
+                                                       g_propagate_error (error, tmp);
+                                               else
+                                                       g_error_free (tmp);
+                                       }
                                         retval = FALSE;
                                 }
                 }