From 9e9fad088b81aa375bbdb4286bb869337c692ce2 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Sep 06 2018 21:53:04 +0000 Subject: Backport two bugfixes from upstream --- diff --git a/0001-Fix-portal-path-handling.patch b/0001-Fix-portal-path-handling.patch new file mode 100644 index 0000000..0092a1f --- /dev/null +++ b/0001-Fix-portal-path-handling.patch @@ -0,0 +1,27 @@ +From 47122288b82e50b88e3185d960e2ba5ee8a27a36 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Wed, 5 Sep 2018 19:54:32 -0400 +Subject: [PATCH] Fix portal path handling + +This was broken when I recently introduced this helper +function. +--- + gtk/gtkprivate.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gtk/gtkprivate.c b/gtk/gtkprivate.c +index 6428347f04..a437047658 100644 +--- a/gtk/gtkprivate.c ++++ b/gtk/gtkprivate.c +@@ -307,7 +307,7 @@ get_portal_path (GDBusConnection *connection, + if (sender[i] == '.') + sender[i] = '_'; + +- path = g_strconcat ("/org/freedesktop/portal/desktop", "/", kind, "/", sender, "/", token, NULL); ++ path = g_strconcat ("/org/freedesktop/portal/desktop", "/", kind, "/", sender, "/", *token, NULL); + + g_free (sender); + +-- +2.19.0.rc0 + diff --git a/0001-GtkApplication-Fix-CRITICAL-on-shutdown-when-registe.patch b/0001-GtkApplication-Fix-CRITICAL-on-shutdown-when-registe.patch new file mode 100644 index 0000000..55c3166 --- /dev/null +++ b/0001-GtkApplication-Fix-CRITICAL-on-shutdown-when-registe.patch @@ -0,0 +1,49 @@ +From 3c7d5e749ccafa75718ef00f1d5f6cdc0defacb3 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" +Date: Wed, 5 Sep 2018 21:46:28 +0200 +Subject: [PATCH] GtkApplication: Fix CRITICAL on shutdown when + register_session=FALSE + +--- + gtk/gtkapplication-dbus.c | 25 ++++++++++++++++--------- + 1 file changed, 16 insertions(+), 9 deletions(-) + +diff --git a/gtk/gtkapplication-dbus.c b/gtk/gtkapplication-dbus.c +index 25015eb68c..0946edf35c 100644 +--- a/gtk/gtkapplication-dbus.c ++++ b/gtk/gtkapplication-dbus.c +@@ -826,15 +826,22 @@ gtk_application_impl_dbus_finalize (GObject *object) + { + GtkApplicationImplDBus *dbus = (GtkApplicationImplDBus *) object; + +- g_dbus_connection_call (dbus->session, +- "org.freedesktop.portal.Desktop", +- dbus->session_id, +- "org.freedesktop.portal.Session", +- "Close", +- NULL, NULL, 0, -1, NULL, NULL, NULL); +- +- g_free (dbus->session_id); +- g_dbus_connection_signal_unsubscribe (dbus->session, dbus->state_changed_handler); ++ if (dbus->session_id) ++ { ++ g_dbus_connection_call (dbus->session, ++ "org.freedesktop.portal.Desktop", ++ dbus->session_id, ++ "org.freedesktop.portal.Session", ++ "Close", ++ NULL, NULL, 0, -1, NULL, NULL, NULL); ++ ++ g_free (dbus->session_id); ++ } ++ ++ if (dbus->state_changed_handler) ++ g_dbus_connection_signal_unsubscribe (dbus->session, ++ dbus->state_changed_handler); ++ + g_clear_object (&dbus->inhibit_proxy); + g_slist_free_full (dbus->inhibit_handles, inhibit_handle_free); + g_free (dbus->app_menu_path); +-- +2.19.0.rc0 + diff --git a/gtk3.spec b/gtk3.spec index a9ef91f..3e9fcf3 100644 --- a/gtk3.spec +++ b/gtk3.spec @@ -21,13 +21,17 @@ Name: gtk3 Version: 3.24.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ graphical user interface library License: LGPLv2+ URL: http://www.gtk.org Source0: http://download.gnome.org/sources/gtk+/3.24/gtk+-%{version}.tar.xz +# Backported from upstream +Patch0: 0001-GtkApplication-Fix-CRITICAL-on-shutdown-when-registe.patch +Patch1: 0001-Fix-portal-path-handling.patch + BuildRequires: pkgconfig(atk) >= %{atk_version} BuildRequires: pkgconfig(atk-bridge-2.0) BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version} @@ -161,7 +165,9 @@ The %{name}-tests package contains tests that can be used to verify the functionality of the installed %{name} package. %prep -%setup -q -n gtk+-%{version} +%autosetup -n gtk+-%{version} -p1 +# Force regeneration with patch1 +rm testsuite/gtk/gtkprivate.c %build export CFLAGS='-fno-strict-aliasing %optflags' @@ -318,6 +324,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache &>/dev/null || : %{_datadir}/installed-tests %changelog +* Thu Sep 06 2018 Kalev Lember - 3.24.0-2 +- Backport two bugfixes from upstream + * Thu Sep 06 2018 Kalev Lember - 3.24.0-1 - Update to 3.24.0