diff --git a/0001-Disable-GOA-page-in-new-user-mode.patch b/0001-Disable-GOA-page-in-new-user-mode.patch new file mode 100644 index 0000000..5ef84d2 --- /dev/null +++ b/0001-Disable-GOA-page-in-new-user-mode.patch @@ -0,0 +1,25 @@ +From 93340174b7e13ec85ce82f299ffcd577a33902fa Mon Sep 17 00:00:00 2001 +From: Rui Matos +Date: Fri, 29 Nov 2013 18:15:34 +0100 +Subject: [PATCH] Disable GOA page in new user mode + +--- + gnome-initial-setup/gnome-initial-setup.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/gnome-initial-setup/gnome-initial-setup.c b/gnome-initial-setup/gnome-initial-setup.c +index 0cb370a..145d3be 100644 +--- a/gnome-initial-setup/gnome-initial-setup.c ++++ b/gnome-initial-setup/gnome-initial-setup.c +@@ -105,6 +105,8 @@ should_skip_page (GisDriver *driver, + } + break; + case GIS_DRIVER_MODE_NEW_USER: ++ if (g_strcmp0 ("goa", page_id) == 0) ++ return TRUE; + default: + break; + } +-- +1.8.3.1 + diff --git a/0001-goa-Prevent-a-use-after-free.patch b/0001-goa-Prevent-a-use-after-free.patch new file mode 100644 index 0000000..0a015a4 --- /dev/null +++ b/0001-goa-Prevent-a-use-after-free.patch @@ -0,0 +1,27 @@ +From 48302b7796e7016dc563f3d6366982f073b27ebe Mon Sep 17 00:00:00 2001 +From: "Jasper St. Pierre" +Date: Sat, 9 Nov 2013 11:43:48 -0500 +Subject: [PATCH] goa: Prevent a use-after-free + +If the user dismisses the dialog, we'll get an error and free it, +but forget to set it to NULL, and segfault. +--- + gnome-initial-setup/pages/goa/gis-goa-page.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gnome-initial-setup/pages/goa/gis-goa-page.c b/gnome-initial-setup/pages/goa/gis-goa-page.c +index 85b8ff5..3228159 100644 +--- a/gnome-initial-setup/pages/goa/gis-goa-page.c ++++ b/gnome-initial-setup/pages/goa/gis-goa-page.c +@@ -106,7 +106,7 @@ on_have_providers (GObject *source, + gtk_dialog_run (GTK_DIALOG (dialog)); + gtk_widget_destroy (dialog); + } +- g_error_free (error); ++ g_clear_error (&error); + } + + g_list_free_full (providers, g_object_unref); +-- +1.8.3.1 + diff --git a/gnome-initial-setup.spec b/gnome-initial-setup.spec index 52eaa7f..c82854c 100644 --- a/gnome-initial-setup.spec +++ b/gnome-initial-setup.spec @@ -1,6 +1,6 @@ Name: gnome-initial-setup Version: 3.10.1.1 -Release: 1%{?dist} +Release: 4%{?dist} Summary: Bootstrapping your OS License: GPLv2+ @@ -11,6 +11,11 @@ Source0: http://download.gnome.org/sources/%{name}/3.10/%{name}-%{version # https://bugzilla.gnome.org/show_bug.cgi?id=687957 Patch0: yelp-fixes.patch +# upstream fix +Patch1: goa-add.patch +Patch2: 0001-goa-Prevent-a-use-after-free.patch +Patch3: 0001-Disable-GOA-page-in-new-user-mode.patch + %global nm_version 0.9.6.4 %global glib_required_version 2.36.0 %global gtk_required_version 3.7.11 @@ -66,6 +71,9 @@ you through configuring it. It is integrated with gdm. %prep %setup -q %patch0 -p1 -b .yelp-fixes +%patch1 -p1 -b .goa +%patch2 -p1 +%patch3 -p1 autoreconf -i -f @@ -107,6 +115,15 @@ useradd -rM -d /run/gnome-initial-setup/ -s /sbin/nologin %{name} &>/dev/null || %{_datadir}/polkit-1/rules.d/20-gnome-initial-setup.rules %changelog +* Fri Nov 29 2013 Rui Matos - 3.10.1.1-4 +- Resolves: rhbz#1035548 - Disables the GOA page in new user mode + +* Thu Nov 28 2013 Rui Matos - 3.10.1.1-3 +- Resolves: rhbz#1027507 - [abrt] gnome-initial-setup-3.10.1.1-2.fc20: magazine_chain_pop_head + +* Fri Nov 1 2013 Matthias Clasen - 3.10.1.1-2 +- Fix goa add dialog to not be empty + * Mon Oct 28 2013 Richard Hughes - 3.10.1.1-1 - Update to 3.10.1.1 diff --git a/goa-add.patch b/goa-add.patch new file mode 100644 index 0000000..46ee69a --- /dev/null +++ b/goa-add.patch @@ -0,0 +1,11 @@ +diff -up gnome-initial-setup-3.10.1.1/gnome-initial-setup/pages/goa/gis-goa-page.c.goa gnome-initial-setup-3.10.1.1/gnome-initial-setup/pages/goa/gis-goa-page.c +--- gnome-initial-setup-3.10.1.1/gnome-initial-setup/pages/goa/gis-goa-page.c.goa 2013-11-01 20:03:47.453759134 -0400 ++++ gnome-initial-setup-3.10.1.1/gnome-initial-setup/pages/goa/gis-goa-page.c 2013-11-01 20:03:59.450736921 -0400 +@@ -81,6 +81,7 @@ on_have_providers (GObject *source + goa_panel_add_account_dialog_add_provider (GOA_PANEL_ADD_ACCOUNT_DIALOG (dialog), provider); + } + ++ gtk_widget_show_all (dialog); + goa_panel_add_account_dialog_run (GOA_PANEL_ADD_ACCOUNT_DIALOG (dialog)); + goa_panel_add_account_dialog_get_account (GOA_PANEL_ADD_ACCOUNT_DIALOG (dialog), &error); + gtk_widget_destroy (dialog);