summaryrefslogtreecommitdiff
path: root/gdk-pixbuf
diff options
context:
space:
mode:
authorMatthias Clasen <matthiasc@src.gnome.org>2007-01-17 04:21:35 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2007-01-17 04:21:35 +0000
commita439b755f54891e788eff9dacaba38556a72e1f2 (patch)
tree4f0eaa8d1f340759b2b1b12df5005a5340153831 /gdk-pixbuf
parent4759035f4a2fb4206a1da204f518b165fcfcea51 (diff)
downloadgdk-pixbuf-a439b755f54891e788eff9dacaba38556a72e1f2.tar.gz
Fix memory leaks in the error case
svn path=/branches/gtk-2-10/; revision=17164
Diffstat (limited to 'gdk-pixbuf')
-rw-r--r--gdk-pixbuf/ChangeLog7
-rw-r--r--gdk-pixbuf/gdk-pixbuf-loader.c13
2 files changed, 9 insertions, 11 deletions
diff --git a/gdk-pixbuf/ChangeLog b/gdk-pixbuf/ChangeLog
index e9ece5255..a36d530de 100644
--- a/gdk-pixbuf/ChangeLog
+++ b/gdk-pixbuf/ChangeLog
@@ -1,3 +1,10 @@
+2007-01-16 Matthias Clasen <mclasen@redhat.com>
+
+ * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Just
+ call gdk_pixbuf_loader_close to close the loader in
+ the error case. Fixes memory leaks in the error case,
+ pointed out by David Neżas.
+
2007-01-05 Matthias Clasen <mclasen@redhat.com>
* === Released 2.10.7 ===
diff --git a/gdk-pixbuf/gdk-pixbuf-loader.c b/gdk-pixbuf/gdk-pixbuf-loader.c
index 6ee5837f6..edc054b83 100644
--- a/gdk-pixbuf/gdk-pixbuf-loader.c
+++ b/gdk-pixbuf/gdk-pixbuf-loader.c
@@ -472,17 +472,8 @@ gdk_pixbuf_loader_write (GdkPixbufLoader *loader,
fail:
gdk_pixbuf_loader_ensure_error (loader, error);
-
- priv->closed = TRUE;
-
- if (priv->image_module && priv->holds_threadlock)
- {
- _gdk_pixbuf_unlock (priv->image_module);
- priv->holds_threadlock = FALSE;
- }
-
- g_signal_emit (loader, pixbuf_loader_signals[CLOSED], 0);
-
+ gdk_pixbuf_loader_close (loader, NULL);
+
return FALSE;
}