avoid destroying dialog and occasional crashes...
...while exporting (#1215905)
This commit is contained in:
parent
726d909d7f
commit
04067b59cd
69
gimp-2.8.14-export-dialog-destroyed-crash.patch
Normal file
69
gimp-2.8.14-export-dialog-destroyed-crash.patch
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
From 10f0f825bc5e0ec67a7b568faa9d444b8f26629d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nils Philippsen <nils@redhat.com>
|
||||||
|
Date: Tue, 14 Jul 2015 17:46:27 +0200
|
||||||
|
Subject: [PATCH] patch: export-dialog-destroyed-crash
|
||||||
|
|
||||||
|
Squashed commit of the following:
|
||||||
|
|
||||||
|
commit 269b9574ea983c173c89110fbc8d9e73de513c80
|
||||||
|
Author: Michael Natterer <mitch@gimp.org>
|
||||||
|
Date: Tue Jul 14 13:22:06 2015 +0200
|
||||||
|
|
||||||
|
Bug 739003 - Crashes in file_save_dialog_response()
|
||||||
|
|
||||||
|
Ref/unref the dialog around saving the image insatead of connecting to
|
||||||
|
"destroy" and NULLifying the local dialog variable on destruction,
|
||||||
|
which has caused weird crashes on fedora.
|
||||||
|
|
||||||
|
(cherry picked from commit a0e48ad29e93e2dc259879abeb2dedc9a420b8f6)
|
||||||
|
---
|
||||||
|
app/dialogs/file-save-dialog.c | 12 +++---------
|
||||||
|
1 file changed, 3 insertions(+), 9 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/app/dialogs/file-save-dialog.c b/app/dialogs/file-save-dialog.c
|
||||||
|
index 8b0873f..b5f3093 100644
|
||||||
|
--- a/app/dialogs/file-save-dialog.c
|
||||||
|
+++ b/app/dialogs/file-save-dialog.c
|
||||||
|
@@ -160,7 +160,6 @@ file_save_dialog_response (GtkWidget *save_dialog,
|
||||||
|
gchar *uri;
|
||||||
|
gchar *basename;
|
||||||
|
GimpPlugInProcedure *save_proc;
|
||||||
|
- gulong handler_id;
|
||||||
|
|
||||||
|
if (! dialog->export)
|
||||||
|
{
|
||||||
|
@@ -183,9 +182,7 @@ file_save_dialog_response (GtkWidget *save_dialog,
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
- handler_id = g_signal_connect (dialog, "destroy",
|
||||||
|
- G_CALLBACK (gtk_widget_destroyed),
|
||||||
|
- &dialog);
|
||||||
|
+ g_object_ref (dialog);
|
||||||
|
|
||||||
|
switch (file_save_dialog_check_uri (save_dialog, gimp,
|
||||||
|
&uri, &basename, &save_proc))
|
||||||
|
@@ -245,9 +242,7 @@ file_save_dialog_response (GtkWidget *save_dialog,
|
||||||
|
g_free (uri);
|
||||||
|
g_free (basename);
|
||||||
|
|
||||||
|
- if (dialog)
|
||||||
|
- gimp_file_dialog_set_sensitive (dialog, TRUE);
|
||||||
|
-
|
||||||
|
+ gimp_file_dialog_set_sensitive (dialog, TRUE);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CHECK_URI_SWITCH_DIALOGS:
|
||||||
|
@@ -259,8 +254,7 @@ file_save_dialog_response (GtkWidget *save_dialog,
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (dialog)
|
||||||
|
- g_signal_handler_disconnect (dialog, handler_id);
|
||||||
|
+ g_object_unref (dialog);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* IMPORTANT: When changing this function, keep
|
||||||
|
--
|
||||||
|
2.4.3
|
||||||
|
|
11
gimp.spec
11
gimp.spec
@ -82,7 +82,7 @@ Summary: GNU Image Manipulation Program
|
|||||||
Name: gimp
|
Name: gimp
|
||||||
Epoch: 2
|
Epoch: 2
|
||||||
Version: 2.8.14
|
Version: 2.8.14
|
||||||
Release: %{?prerelprefix}1%{dotprerel}%{dotgitrev}%{?dist}.2
|
Release: %{?prerelprefix}2%{dotprerel}%{dotgitrev}%{?dist}
|
||||||
|
|
||||||
# Compute some version related macros.
|
# Compute some version related macros.
|
||||||
# Ugly, need to get quoting percent signs straight.
|
# Ugly, need to get quoting percent signs straight.
|
||||||
@ -202,6 +202,11 @@ Patch0: gimp-%{version}%{dashprerel}-git%{gitrev}.patch.bz2
|
|||||||
# Fedora specific.
|
# Fedora specific.
|
||||||
Patch1: gimp-2.8.2-cm-system-monitor-profile-by-default.patch
|
Patch1: gimp-2.8.2-cm-system-monitor-profile-by-default.patch
|
||||||
|
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1215905
|
||||||
|
# Avoid destroying dialog and occasional crashes while exporting.
|
||||||
|
# Upstream commit 908f4e69d656e5a1cd4b23310a16e287e8ae72f7.
|
||||||
|
Patch2: gimp-2.8.14-export-dialog-destroyed-crash.patch
|
||||||
|
|
||||||
# use external help browser directly if help browser plug-in is not built
|
# use external help browser directly if help browser plug-in is not built
|
||||||
Patch100: gimp-2.8.6-external-help-browser.patch
|
Patch100: gimp-2.8.6-external-help-browser.patch
|
||||||
|
|
||||||
@ -291,6 +296,7 @@ EOF
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%patch1 -p1 -b .cm-system-monitor-profile-by-default
|
%patch1 -p1 -b .cm-system-monitor-profile-by-default
|
||||||
|
%patch2 -p1 -b .export-dialog-destroyed-crash
|
||||||
|
|
||||||
%if ! %{with helpbrowser}
|
%if ! %{with helpbrowser}
|
||||||
%patch100 -p1 -b .external-help-browser
|
%patch100 -p1 -b .external-help-browser
|
||||||
@ -652,6 +658,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 14 2015 Nils Philippsen <nils@redhat.com> - 2:2.8.14-2
|
||||||
|
- avoid destroying dialog and occasional crashes while exporting (#1215905)
|
||||||
|
|
||||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:2.8.14-1.2
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:2.8.14-1.2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user