Hello community,

here is the log from the commit of package gdm for openSUSE:Factory checked in 
at 2014-07-13 17:16:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdm (Old)
 and      /work/SRC/openSUSE:Factory/.gdm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gdm"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gdm/gdm.changes  2014-06-27 06:53:17.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.gdm.new/gdm.changes     2014-07-13 
17:16:12.000000000 +0200
@@ -1,0 +2,6 @@
+Fri Jun 27 16:43:48 UTC 2014 - [email protected]
+
+- Add gdm-plymouth-vt1.patch: switch back to VT1 when terminating
+  gdm, if plymouth was running at startup [bnc#881676].
+
+-------------------------------------------------------------------

New:
----
  gdm-plymouth-vt1.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gdm.spec ++++++
--- /var/tmp/diff_new_pack.KEfyw2/_old  2014-07-13 17:16:13.000000000 +0200
+++ /var/tmp/diff_new_pack.KEfyw2/_new  2014-07-13 17:16:13.000000000 +0200
@@ -60,6 +60,8 @@
 Patch35:        gdm-xauthlocalhostname.patch
 # PATCH-FIX-UPSTREAM gdm-look-at-runlevel.patch bnc540482 bgo599180 
[email protected] -- Look at the current runlevel before managing the display 
again, so we don't do this when shutting down or rebooting
 Patch40:        gdm-look-at-runlevel.patch
+# PATCH-FIX-UPSTREAM gdm-plymouth-vt1.patch bnc#881676 [email protected] -- 
switch to VT1 when quitting if gdm was starting with plymouth running
+Patch41:        gdm-plymouth-vt1.patch
 BuildRequires:  check-devel
 # needed for directory ownership
 BuildRequires:  dconf
@@ -193,6 +195,7 @@
 %patch34 -p1
 #patch35 -p1
 %patch40 -p1
+%patch41 -p1
 
 %build
 NOCONFIGURE=1 sh autogen.sh

++++++ gdm-plymouth-vt1.patch ++++++
Index: gdm-3.12.2/daemon/main.c
===================================================================
--- gdm-3.12.2.orig/daemon/main.c
+++ gdm-3.12.2/daemon/main.c
@@ -33,6 +33,8 @@
 #include <sys/wait.h>
 #include <locale.h>
 #include <signal.h>
+#include <sys/ioctl.h>
+#include <sys/vt.h>
 
 #include <glib.h>
 #include <glib/gi18n.h>
@@ -308,6 +310,23 @@ block_sigusr1 (void)
         sigprocmask (SIG_BLOCK, &mask, NULL);
 }
 
+static void
+jump_to_vt (int                vt_number)
+{
+        int fd;
+
+        fd = open ("/dev/tty0", O_RDWR | O_NOCTTY);
+        if (ioctl (fd, VT_ACTIVATE, vt_number) < 0) {
+                g_debug ("Gdm: couldn't initiate jump to VT %d: %m",
+                         vt_number);
+        } else if (ioctl (fd, VT_WAITACTIVE, vt_number) < 0) {
+                g_debug ("Gdm: couldn't finalize jump to VT %d: %m",
+                         vt_number);
+        }
+        close(fd);
+}
+
+
 int
 main (int    argc,
       char **argv)
@@ -317,6 +336,7 @@ main (int    argc,
         GError             *error = NULL;
         int                 ret;
         gboolean            res;
+        gboolean            plymouth_running = FALSE;
         static gboolean     do_timed_exit    = FALSE;
         static gboolean     print_version    = FALSE;
         static gboolean     fatal_warnings   = FALSE;
@@ -400,6 +420,8 @@ main (int    argc,
 
         g_chdir ("/");
 
+        plymouth_running = g_access("/run/plymouth/pid", F_OK) == 0;
+
         main_loop = g_main_loop_new (NULL, FALSE);
 
         g_unix_signal_add (SIGTERM, on_shutdown_signal_cb, main_loop);
@@ -429,6 +451,11 @@ main (int    argc,
                 g_printerr ("%s\n", error->message);
                 g_clear_error (&error);
         }
+
+        if (plymouth_running) {
+            jump_to_vt (1);
+        }
+
         return ret;
 }
 
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to