From 2cdf8d190dce61d360498af4bf857b2ea0aa92efb200cde6266fba740fcfb216 Mon Sep 17 00:00:00 2001 From: Vincent Untz Date: Fri, 7 Oct 2011 12:10:57 +0000 Subject: [PATCH] Accepting request 87040 from home:vuntz:branches:GNOME:Factory Fix crash in old greeter + rebase patch OBS-URL: https://build.opensuse.org/request/show/87040 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=189 --- gdm-fix-no-split-again.patch | 23 ++ gdm-greeter-greater-ui.patch | 463 +++++++++++++++++++---------------- gdm.changes | 7 + gdm.spec | 9 +- 4 files changed, 282 insertions(+), 220 deletions(-) create mode 100644 gdm-fix-no-split-again.patch diff --git a/gdm-fix-no-split-again.patch b/gdm-fix-no-split-again.patch new file mode 100644 index 0000000..1fc883e --- /dev/null +++ b/gdm-fix-no-split-again.patch @@ -0,0 +1,23 @@ +commit ea366b1a582bbd886ec7da5d9f59b415d074164f +Author: Vincent Untz +Date: Fri Oct 7 13:07:43 2011 +0200 + + daemon: additional fix for legacy auth compatibility layer + + g_str_has_prefix() was misused. + + https://bugzilla.gnome.org/show_bug.cgi?id=658451 + +diff --git a/daemon/gdm-greeter-server.c b/daemon/gdm-greeter-server.c +index 535fdbf..d5a5bcd 100644 +--- a/daemon/gdm-greeter-server.c ++++ b/daemon/gdm-greeter-server.c +@@ -270,7 +270,7 @@ translate_incoming_service_name (GdmGreeterServer *greeter_server, + g_debug ("GdmGreeterServer: Adjusting pam service from '%s' to 'gdm' for legacy compatibility", service_name); + service_name = "gdm"; + greeter_server->priv->using_legacy_service_name = TRUE; +- } else if (g_str_has_prefix (service_name, "gdm-") == 0 && strcmp (service_name, "gdm-autologin") != 0) { ++ } else if (g_str_has_prefix (service_name, "gdm-") && strcmp (service_name, "gdm-autologin") != 0) { + g_debug ("GdmGreeterServer: Rejecting pam service '%s' for legacy compatibility", service_name); + return NULL; + } diff --git a/gdm-greeter-greater-ui.patch b/gdm-greeter-greater-ui.patch index 03c3830..de03ae5 100644 --- a/gdm-greeter-greater-ui.patch +++ b/gdm-greeter-greater-ui.patch @@ -1,9 +1,9 @@ -Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.c +Index: gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.c =================================================================== ---- gdm-2.31.2.orig/gui/simple-greeter/gdm-greeter-login-window.c -+++ gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.c -@@ -1044,35 +1044,6 @@ on_user_unchosen (GdmUserChooserWidget - do_cancel (login_window); +--- gdm-3.2.0.orig/gui/simple-greeter/gdm-greeter-login-window.c ++++ gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.c +@@ -1637,35 +1637,6 @@ gdm_greeter_login_window_set_default_ses + session_name); } -static void @@ -38,7 +38,7 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.c static char * file_read_one_line (const char *filename) { -@@ -1184,16 +1155,19 @@ create_computer_info (GdmGreeterLoginWin +@@ -1787,16 +1758,19 @@ create_computer_info (GdmGreeterLoginWin if (strcmp (localhost, "localhost") == 0 || strcmp (localhost, "localhost.localdomain") == 0) { @@ -60,27 +60,30 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.c } gdm_profile_end (NULL); -@@ -1293,9 +1267,6 @@ load_theme (GdmGreeterLoginWindow *login +@@ -1943,9 +1917,6 @@ load_theme (GdmGreeterLoginWindow *login create_computer_info (login_window); - box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "computer-info-event-box")); - g_signal_connect (box, "button-press-event", G_CALLBACK (on_computer_info_label_button_press), login_window); - - if (login_window->priv->user_list_disabled) { - switch_mode (login_window, MODE_AUTHENTICATION); - } else { -Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui + clear_active_extension (login_window); + switch_mode (login_window, MODE_SELECTION); + +Index: gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.ui =================================================================== ---- gdm-2.31.2.orig/gui/simple-greeter/gdm-greeter-login-window.ui -+++ gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui -@@ -2,28 +2,29 @@ +--- gdm-3.2.0.orig/gui/simple-greeter/gdm-greeter-login-window.ui ++++ gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.ui +@@ -1,29 +1,33 @@ +- ++ - +- - + + True ++ False + 0 + out + @@ -88,19 +91,21 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui True - 0 - out ++ False + 24 - + True - 24 -+ vertical ++ False + 10 - -+ ++ True - 10 ++ False + 12 - @@ -109,49 +114,31 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - - - True -- 64 +- 48 - computer - - ++ False + 0 + 48 + computer False -@@ -32,227 +33,103 @@ +@@ -32,220 +36,111 @@ - -+ ++ True - False ++ False + vertical + 6 - + -+ True -+ 0 -+ Version -+ -+ -+ 0 -+ -+ -+ -+ -+ True -+ 0 -+ Computer Name -+ -+ -+ 1 -+ -+ -+ -+ True - False - False @@ -236,6 +223,33 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - False - - ++ False ++ 0 ++ Version ++ ++ ++ True ++ True ++ 0 ++ ++ ++ ++ ++ True ++ False ++ 0 ++ Computer Name ++ ++ ++ True ++ True ++ 1 ++ ++ ++ ++ ++ True ++ False - - @@ -243,6 +257,7 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - + True ++ False + center + True @@ -262,11 +277,15 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - False - False ++ True ++ True 1 + + ++ True ++ True + 0 + + @@ -287,95 +306,57 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - + True -+ vertical -+ 10 -+ -+ -+ ++ 2 - -+ ++ True -- 10 -+ 6 +- 2 +- +- +- True +- 1.0 +- 0.0 +- +- +- False +- +- +- +- +- False +- False +- 0 +- +- ++ 1.0 ++ 0.0 -- +- ++ + False + +- +- True +- True +- 1 +- - - -- -+ - True -- 6 -- -- -- True -- -- -- -- -- -- -- False -- False -- 0 -- -- -- -- -- True -- True -- GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK -- True -- -- -- -- -- -- 1 -- -- +- +- True +- 10 - - - -+ -+ -+ - - - False - False -- 1 -+ 0 - - - -- -+ - True -- -- -- True -- -- -- 0 -- -- -+ True -+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK -+ -+ True -+ -+ -+ - - +- +- - False - False - 2 -+ 1 - +- -- + - - - @@ -388,81 +369,115 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui - 6 - end - +- +- False +- 0.0 +- 0.0 +- 0.0 +- 1.0 +- + +- True +- True ++ False ++ False + 0 +- True + + + - -- Cancel +- Cancel - True - True -- -- ++ ++ False + + - False - False -- 0 -- -- -- ++ True ++ True + 1 + + + - - Unlock -- True ++ + True - True - True - True ++ 10 + + + False -@@ -261,31 +138,88 @@ +@@ -253,32 +148,92 @@ + 2 - +- - - Login -+ - True +- True - True - True - True - False -+ -+ -+ True -+ -+ -+ 0 -+ -+ - - - False - False +- +- +- False +- False - 5 -+ 2 - - - +- +- ++ + + + -+ 1 ++ True ++ True ++ 4 + + + + + True ++ False + 6 + end + ++ ++ False ++ 0.0 ++ 0.0 ++ 0.0 ++ 1.0 + + + True + True +- end ++ 0 ++ True ++ ++ ++ + -+ gtk-cancel ++ Cancel + True + True -+ True ++ False ++ False + + + False + False -+ 0 ++ 1 + + + @@ -472,13 +487,14 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui + True + True + True ++ False + + + False + False -+ 1 -+ -+ + 2 + + + + + Login @@ -487,19 +503,18 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui + True + True + False ++ False + - - False - False -- end -- 2 ++ ++ False ++ False + 5 - - ++ ++ + -+ False -+ False ++ True ++ True + end + 2 + @@ -510,35 +525,38 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui + + -Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new +Index: gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.ui.new =================================================================== --- /dev/null -+++ gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new -@@ -0,0 +1,225 @@ -+ ++++ gdm-3.2.0/gui/simple-greeter/gdm-greeter-login-window.ui.new +@@ -0,0 +1,239 @@ ++ + + -+ + + True ++ False + 0 + out + + + True ++ False + 24 + + + True -+ vertical ++ False + 10 + -+ ++ + True ++ False + 12 + + + True ++ False + 0 + 48 + computer @@ -550,36 +568,45 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + + + -+ ++ + True ++ False + vertical + 6 + + + True ++ False + 0 + Version + + ++ True ++ True + 0 + + + + + True ++ False + 0 + Computer Name + + ++ True ++ True + 1 + + + + + True ++ False + + + True ++ False + center + True + @@ -593,11 +620,15 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + + + ++ True ++ True + 1 + + + + ++ True ++ True + 0 + + @@ -607,63 +638,40 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + + + True -+ vertical -+ 10 ++ 2 + -+ -+ -+ -+ ++ + True -+ 6 ++ 1.0 ++ 0.0 + -+ -+ True -+ -+ -+ ++ ++ False + -+ -+ False -+ False -+ 0 -+ -+ -+ -+ -+ True -+ True -+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK -+ -+ True -+ -+ -+ -+ -+ -+ 1 -+ -+ -+ -+ + + + + False + False ++ 0 ++ ++ ++ ++ ++ False ++ ++ ++ True ++ True + 1 + + + -+ ++ + True ++ 10 + -+ -+ True -+ -+ -+ 0 -+ ++ + + + @@ -676,25 +684,44 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + + + -+ 1 ++ True ++ True ++ 4 + + + + + True ++ False + 6 + end + ++ ++ False ++ 0.0 ++ 0.0 ++ 0.0 ++ 1.0 ++ ++ ++ True ++ True ++ 0 ++ True ++ ++ ++ + -+ gtk-cancel ++ Cancel + True + True -+ True ++ False ++ False + + + False + False -+ 0 ++ 1 + + + @@ -704,11 +731,12 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + True + True + True ++ False + + + False + False -+ 1 ++ 2 + + + @@ -719,6 +747,7 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + True + True + False ++ False + + + False @@ -728,8 +757,8 @@ Index: gdm-2.31.2/gui/simple-greeter/gdm-greeter-login-window.ui.new + + + -+ False -+ False ++ True ++ True + end + 2 + diff --git a/gdm.changes b/gdm.changes index ee2b154..689cc80 100644 --- a/gdm.changes +++ b/gdm.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Oct 7 11:15:20 UTC 2011 - vuntz@opensuse.org + +- Add gdm-fix-no-split-again.patch: do not crash in old + (non-gnome-shell) greeter when trying to login. +- Rebase gdm-greeter-greater-ui.patch, fix bnc#689552. + ------------------------------------------------------------------- Sat Oct 1 05:39:11 UTC 2011 - coolo@suse.com diff --git a/gdm.spec b/gdm.spec index 7c9765b..d88b7bd 100644 --- a/gdm.spec +++ b/gdm.spec @@ -55,7 +55,7 @@ Patch8: gdm-sysconfig-settings.patch Patch9: gdm-passwordless-login.patch # PATCH-NEEDS-REBASE gdm-domain-logon.patch hpj@novell.com -- Add UI to log in a specific domain (was: PATCH_FEATURE-SLED bnc#627575) Patch10: gdm-domain-logon.patch -# PATCH-NEEDS-REBASE PATCH-FIX-UPSTREAM gdm-greeter-greater-ui.patch bnc436431 bgo560508 vuntz@novell.com -- Improve the layout of the greeter. Note: the patch contains a patched glade file *and* the result glade file (for reference only, in case we need to rebase the patch) +# PATCH-FIX-UPSTREAM gdm-greeter-greater-ui.patch bnc436431 bgo560508 vuntz@novell.com -- Improve the layout of the greeter. Note: the patch contains a patched glade file *and* the result glade file (for reference only, in case we need to rebase the patch) Patch15: gdm-greeter-greater-ui.patch # PATCH-FIX-UPSTREAM gdm-always-reflect-keyboard-layout.patch bnc438159 bgo561771 hpj@novell.com -- Make keyboard selector not neglect to apply the selected keyboard in some situations. Patch18: gdm-always-reflect-keyboard-layout.patch @@ -71,6 +71,8 @@ Patch40: gdm-look-at-runlevel.patch Patch60: gdm-selinux.patch # PATCH-FIX-OPENSUSE gdm-unified-auth.patch bgo#658451 vuntz@opensuse.org -- Fix "better unified authentication compatibility" Patch61: gdm-unified-auth.patch +# PATCH-FIX-OPENSUSE gdm-fix-no-split-again.patch bgo#658451 vuntz@opensuse.org -- Fix in addition to previous patch, to prevent crash in old greeter when trying to login +Patch62: gdm-fix-no-split-again.patch BuildRequires: check-devel BuildRequires: dbus-1-glib-devel # needed for directory ownership @@ -218,7 +220,7 @@ running display manager. %prep %setup -q translation-update-upstream -#disabled, needed for patch15 +#disabled, needed for patch10 #gnome-patch-translation-prepare %patch0 -p1 %patch1 -p1 @@ -231,7 +233,7 @@ translation-update-upstream %patch9 -p1 #%%patch10 -p1 # needs rebase (bnc#689552) -#%%patch15 -p1 +%patch15 -p1 %patch18 -p1 %patch31 -p1 %patch34 -p1 @@ -239,6 +241,7 @@ translation-update-upstream %patch40 -p1 %patch60 %patch61 -p1 +%patch62 -p1 #gnome-patch-translation-update %build