[gimp] app: don't set the same GFile again in gimp_image_set_file()



commit af7646754fefe8b172008a7616a4aa4b30439377
Author: Michael Natterer <mitch gimp org>
Date:   Sun Jul 13 15:05:10 2014 +0200

    app: don't set the same GFile again in gimp_image_set_file()
    
    or we might unref the GFile used e.g. in File->Save under the calling
    code's feet.

 app/core/gimpimage.c |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)
---
diff --git a/app/core/gimpimage.c b/app/core/gimpimage.c
index f801d95..220c5c4 100644
--- a/app/core/gimpimage.c
+++ b/app/core/gimpimage.c
@@ -1849,11 +1849,18 @@ void
 gimp_image_set_file (GimpImage *image,
                      GFile     *file)
 {
+  GimpImagePrivate *private;
+
   g_return_if_fail (GIMP_IS_IMAGE (image));
   g_return_if_fail (file == NULL || G_IS_FILE (file));
 
-  gimp_object_take_name (GIMP_OBJECT (image),
-                         file ? g_file_get_uri (file) : NULL);
+  private = GIMP_IMAGE_GET_PRIVATE (image);
+
+  if (private->file != file)
+    {
+      gimp_object_take_name (GIMP_OBJECT (image),
+                             file ? g_file_get_uri (file) : NULL);
+    }
 }
 
 /**


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]