[Pkg-xfce-commits] r5933 - in goodies/trunk/ristretto/debian: . patches

Lionel Le Folgoc mrpouit-guest at alioth.debian.org
Wed Aug 17 03:48:44 UTC 2011


Author: mrpouit-guest
Date: 2011-08-17 15:48:44 +0000 (Wed, 17 Aug 2011)
New Revision: 5933

Added:
   goodies/trunk/ristretto/debian/patches/01_fix-various-memleaks.patch
   goodies/trunk/ristretto/debian/patches/series
Modified:
   goodies/trunk/ristretto/debian/changelog
Log:
* debian/patches:
  - 01_fix-various-memleaks.patch: apply patch from upstream author to fix
    several memleaks when opening a set of pictures.
  - series: add this patch.

Modified: goodies/trunk/ristretto/debian/changelog
===================================================================
--- goodies/trunk/ristretto/debian/changelog	2011-08-17 11:23:36 UTC (rev 5932)
+++ goodies/trunk/ristretto/debian/changelog	2011-08-17 15:48:44 UTC (rev 5933)
@@ -1,3 +1,12 @@
+ristretto (0.0.93-3) UNRELEASED; urgency=low
+
+  * debian/patches:
+    - 01_fix-various-memleaks.patch: apply patch from upstream author to fix
+      several memleaks when opening a set of pictures.
+    - series: add this patch.
+
+ -- Lionel Le Folgoc <mrpouit at gmail.com>  Wed, 17 Aug 2011 17:39:16 +0200
+
 ristretto (0.0.93-2) unstable; urgency=low
 
   * Upload to unstable.

Added: goodies/trunk/ristretto/debian/patches/01_fix-various-memleaks.patch
===================================================================
--- goodies/trunk/ristretto/debian/patches/01_fix-various-memleaks.patch	                        (rev 0)
+++ goodies/trunk/ristretto/debian/patches/01_fix-various-memleaks.patch	2011-08-17 15:48:44 UTC (rev 5933)
@@ -0,0 +1,103 @@
+From 54035ac294a8544e41d0ec590ab0dbc0370e410b Mon Sep 17 00:00:00 2001
+From: Stephan Arts <stephan at xfce.org>
+Date: Thu, 11 Aug 2011 22:30:54 +0200
+Subject: [PATCH 1/3] Fix memory leak
+
+---
+ src/image.c |    3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/src/image.c b/src/image.c
+index 09fe562..987316d 100644
+--- a/src/image.c
++++ b/src/image.c
+@@ -639,6 +639,7 @@ cb_rstto_image_read_input_stream_ready (GObject *source_object, GAsyncResult *re
+         if(gdk_pixbuf_loader_write (image->priv->loader, (const guchar *)image->priv->buffer, read_bytes, &error) == FALSE)
+         {
+             g_input_stream_close (G_INPUT_STREAM (source_object), NULL, NULL);
++            g_object_unref (source_object);
+             g_object_unref (image);
+         }
+         else
+@@ -659,6 +660,7 @@ cb_rstto_image_read_input_stream_ready (GObject *source_object, GAsyncResult *re
+         {
+             /* OK */
+             g_input_stream_close (G_INPUT_STREAM (source_object), NULL, NULL);
++            g_object_unref (source_object);
+             gdk_pixbuf_loader_close (image->priv->loader, NULL);
+             g_object_unref (image);
+         }
+@@ -666,6 +668,7 @@ cb_rstto_image_read_input_stream_ready (GObject *source_object, GAsyncResult *re
+         {
+             /* I/O ERROR */
+             g_input_stream_close (G_INPUT_STREAM (source_object), NULL, NULL);
++            g_object_unref (source_object);
+             gdk_pixbuf_loader_close (image->priv->loader, NULL);
+             g_object_unref (image);
+         }
+-- 
+1.7.5.4
+
+
+From 8dfd7b9e3d455ccd76a454bd22472df1a06226d9 Mon Sep 17 00:00:00 2001
+From: Stephan Arts <stephan at xfce.org>
+Date: Sat, 6 Aug 2011 12:01:26 +0200
+Subject: [PATCH 2/3] Emit the 'iter-changed' signal when the image-list is
+ empty.
+
+---
+ src/image_list.c |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/src/image_list.c b/src/image_list.c
+index 7f7af18..1344f3c 100644
+--- a/src/image_list.c
++++ b/src/image_list.c
+@@ -269,6 +269,7 @@ rstto_image_list_remove_image (RsttoImageList *image_list, RsttoImage *image)
+                 if (rstto_image_list_iter_get_image (iter->data) == image)
+                 {
+                     ((RsttoImageListIter *)(iter->data))->priv->image = NULL;
++                    g_signal_emit (G_OBJECT (iter->data), rstto_image_list_iter_signals[RSTTO_IMAGE_LIST_ITER_SIGNAL_CHANGED], 0, NULL);
+                 }
+             }
+             iter = g_slist_next (iter);
+-- 
+1.7.5.4
+
+
+From 4ba20c52980d31f508369a6a2dff6a67bfa2bae1 Mon Sep 17 00:00:00 2001
+From: Stephan Arts <stephan at xfce.org>
+Date: Fri, 12 Aug 2011 08:02:34 +0200
+Subject: [PATCH 3/3] Free gtkanimationiter
+
+---
+ src/image.c |   13 +++++++++++++
+ 1 files changed, 13 insertions(+), 0 deletions(-)
+
+diff --git a/src/image.c b/src/image.c
+index 987316d..4ce323f 100644
+--- a/src/image.c
++++ b/src/image.c
+@@ -725,6 +725,19 @@ static void
+ cb_rstto_image_area_prepared (GdkPixbufLoader *loader, RsttoImage *image)
+ {
+     gint timeout = 0;
++
++    if (image->priv->animation)
++    {
++        g_object_unref (image->priv->animation);
++        image->priv->animation = NULL;
++    }
++
++    if (image->priv->iter)
++    {
++        g_object_unref (image->priv->iter);
++        image->priv->iter = NULL;
++    }
++
+     image->priv->animation = gdk_pixbuf_loader_get_animation (loader);
+     image->priv->iter = gdk_pixbuf_animation_get_iter (image->priv->animation, NULL);
+     if (image->priv->pixbuf)
+-- 
+1.7.5.4
+

Added: goodies/trunk/ristretto/debian/patches/series
===================================================================
--- goodies/trunk/ristretto/debian/patches/series	                        (rev 0)
+++ goodies/trunk/ristretto/debian/patches/series	2011-08-17 15:48:44 UTC (rev 5933)
@@ -0,0 +1 @@
+01_fix-various-memleaks.patch




More information about the Pkg-xfce-commits mailing list