r10701 - in /desktop/unstable/gdm/debian: changelog patches/90_from_svn_fix_gdm_restart.patch patches/series

lool at users.alioth.debian.org lool at users.alioth.debian.org
Wed May 2 13:27:44 UTC 2007


Author: lool
Date: Wed May  2 13:27:43 2007
New Revision: 10701

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=10701
Log:
* New patch, 90_from_svn_fix_gdm_restart, fixed restarting of gdm when
  Ctrl-Alt-Backspace is pressed; from SVN; found in the Ubuntu package.

Added:
    desktop/unstable/gdm/debian/patches/90_from_svn_fix_gdm_restart.patch
Modified:
    desktop/unstable/gdm/debian/changelog
    desktop/unstable/gdm/debian/patches/series

Modified: desktop/unstable/gdm/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm/debian/changelog?rev=10701&op=diff
==============================================================================
--- desktop/unstable/gdm/debian/changelog (original)
+++ desktop/unstable/gdm/debian/changelog Wed May  2 13:27:43 2007
@@ -86,8 +86,10 @@
   * Build-dep on x11proto-core-dev for XDMCP.
   * Configure with "--with-prefetch=yes"; PreFetchProgram is empty by default
     in Debian though.
-
- -- Loic Minier <lool at dooz.org>  Wed, 02 May 2007 15:17:56 +0200
+  * New patch, 90_from_svn_fix_gdm_restart, fixed restarting of gdm when
+    Ctrl-Alt-Backspace is pressed; from SVN; found in the Ubuntu package.
+
+ -- Loic Minier <lool at dooz.org>  Wed, 02 May 2007 15:27:02 +0200
 
 gdm (2.16.4-1.1) unstable; urgency=low
 

Added: desktop/unstable/gdm/debian/patches/90_from_svn_fix_gdm_restart.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm/debian/patches/90_from_svn_fix_gdm_restart.patch?rev=10701&op=file
==============================================================================
--- desktop/unstable/gdm/debian/patches/90_from_svn_fix_gdm_restart.patch (added)
+++ desktop/unstable/gdm/debian/patches/90_from_svn_fix_gdm_restart.patch Wed May  2 13:27:43 2007
@@ -1,0 +1,74 @@
+diff -Nur gdm-2.18.0/daemon/slave.c gdm-2.18.0.new/daemon/slave.c
+--- gdm-2.18.0/daemon/slave.c	2007-03-26 17:14:30.000000000 +0200
++++ gdm-2.18.0.new/daemon/slave.c	2007-03-26 17:14:31.000000000 +0200
+@@ -160,7 +160,6 @@
+ /* Local prototypes */
+ static gint     gdm_slave_xerror_handler (Display *disp, XErrorEvent *evt);
+ static gint     gdm_slave_xioerror_handler (Display *disp);
+-static gint     gdm_slave_ignore_xioerror_handler (Display *disp);
+ static void	gdm_slave_run (GdmDisplay *display);
+ static void	gdm_slave_wait_for_login (void);
+ static void     gdm_slave_greeter (void);
+@@ -201,8 +200,6 @@
+ 
+ /* for signals that want to exit */
+ static Jmp_buf slave_start_jmp;
+-/* for handling xioerror during ctl-alt-bs */
+-static Jmp_buf ignore_xioerror_jmp;
+ static gboolean return_to_slave_start_jmp = FALSE;
+ static gboolean already_in_slave_start_jmp = FALSE;
+ static char *slave_start_jmp_error_to_print = NULL;
+@@ -4519,38 +4516,6 @@
+ 	    kill (- (d->sesspid), SIGTERM);
+     gdm_sigchld_block_pop ();
+ 
+-    /* HACK:
+-       This is to fix #126071, that is kill processes that may still hold open
+-       fd's in the home directory to allow a clean unmount.  However note of course
+-       that this is a race. */
+-    /* FIX HACK: We will get an xioerror out of whack clients if the user crashed
+-       X with ctl-alt-backspace.  So, we need to ignore xioerror while we do this.
+-       Otherwise, we end up in a longjmp to quick_exit which will prevent things
+-       like PostSession scripts from processing */
+-    switch (Setjmp (ignore_xioerror_jmp)) {
+-    case 0:
+-       /* Having just set the jump point, activate the error handler that returns
+-          us to the next case */
+-       XSetIOErrorHandler (gdm_slave_ignore_xioerror_handler);
+-       break;
+-    default:
+-       /* Here means we saw an xioerror and ignored it. */
+-       /* xioerror will cause this to drop back into whack_clients, but I think
+-          that is okay because I haven't seen it do so more than once */
+-       gdm_debug ("gdm_slave_session_stop: back here from xioerror");
+-       break;
+-    }
+-
+-    gdm_server_whack_clients (d->dsp);
+-
+-    /* Now we should care about xioerror once again??? */
+-    XSetIOErrorHandler (gdm_slave_xioerror_handler);
+-
+-#if defined (_POSIX_PRIORITY_SCHEDULING) && defined (HAVE_SCHED_YIELD)
+-    /* let the other processes die perhaps or whatnot */
+-    sched_yield ();
+-#endif
+-
+     finish_session_output (run_post_session /* do_read */);
+     
+     if (local_login == NULL)
+@@ -4983,14 +4948,6 @@
+     return (0);
+ }
+ 
+-/* Ignore fatal X errors when user did ctl-alt-backspace */
+-static gint
+-gdm_slave_ignore_xioerror_handler (Display *disp)
+-{
+-    gdm_debug ("Fatal X error detected.  Ignoring same during session shut down.");
+-    Longjmp (ignore_xioerror_jmp, 1);
+-}
+-
+ /* We usually respond to fatal errors by restarting the display */
+ static gint
+ gdm_slave_xioerror_handler (Display *disp)

Modified: desktop/unstable/gdm/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm/debian/patches/series?rev=10701&op=diff
==============================================================================
--- desktop/unstable/gdm/debian/patches/series (original)
+++ desktop/unstable/gdm/debian/patches/series Wed May  2 13:27:43 2007
@@ -19,3 +19,4 @@
 68_doc-build-add-revnumber.patch
 69_misc-config-typos.patch
 70_mandatory-relibtoolize.patch
+90_from_svn_fix_gdm_restart.patch




More information about the pkg-gnome-commits mailing list