summaryrefslogtreecommitdiff
path: root/kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch
diff options
context:
space:
mode:
Diffstat (limited to 'kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch')
-rw-r--r--kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch165
1 files changed, 0 insertions, 165 deletions
diff --git a/kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch b/kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch
deleted file mode 100644
index 2c49ccd4..00000000
--- a/kde-base/kdm/files/kdebase-workspace-4.4.92-kdm_plymouth081.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-diff -up kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/dm.c
---- kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
-+++ kdebase-workspace-4.4.92/kdm/backend/dm.c 2010-07-07 13:55:48.425171749 -0500
-@@ -1329,6 +1329,81 @@ getBusyVTs(void)
- return activeVTs;
- }
-
-+static int
-+get_active_vt (void)
-+{
-+ int console_fd;
-+ struct vt_stat console_state = { 0 };
-+ console_fd = open ("/dev/tty0", O_RDONLY | O_NOCTTY);
-+ if (console_fd < 0) {
-+ goto out;
-+ }
-+ if (ioctl (console_fd, VT_GETSTATE, &console_state) < 0) {
-+ goto out;
-+ }
-+out:
-+ if (console_fd >= 0) {
-+ close (console_fd);
-+ }
-+ return console_state.v_active;
-+}
-+
-+static int
-+plymouth_is_running (void)
-+{
-+ int status;
-+ status = system ("/bin/plymouth --ping");
-+
-+ return WIFEXITED (status) && WEXITSTATUS (status) == 0;
-+}
-+
-+static int
-+plymouth_has_active_vt (void)
-+{
-+ int status;
-+ status = system ("/bin/plymouth --has-active-vt");
-+
-+ return WIFEXITED (status) && WEXITSTATUS (status) == 0;
-+}
-+
-+static int
-+plymouth_prepare_for_transition (void)
-+{
-+ int status;
-+ status = system ("/bin/plymouth deactivate");
-+
-+ return WIFEXITED (status) && WEXITSTATUS (status) == 0;
-+}
-+
-+int
-+plymouth_quit_with_transition (void)
-+{
-+ int status;
-+ status = system ("/bin/plymouth quit --retain-splash");
-+
-+ return WIFEXITED (status) && WEXITSTATUS (status) == 0;
-+}
-+
-+static int
-+plymouth_quit_without_transition (void)
-+{
-+ int status;
-+ status = system ("/bin/plymouth quit");
-+
-+ return WIFEXITED (status) && WEXITSTATUS (status) == 0;
-+}
-+
-+static int
-+triggered_to_force_display_on_active_vt (void)
-+{
-+ int should_force_display_on_active_vt;
-+ should_force_display_on_active_vt=open("/var/spool/gdm/force-display-on-active-vt", O_RDONLY);
-+ if ( should_force_display_on_active_vt >= 0 )
-+ close(should_force_display_on_active_vt);
-+ unlink("/var/spool/gdm/force-display-on-active-vt");
-+ return should_force_display_on_active_vt;
-+}
-+
- static void
- allocateVT(struct display *d)
- {
-@@ -1338,6 +1413,43 @@ allocateVT(struct display *d)
- if ((d->displayType & d_location) == dLocal &&
- d->status == notRunning && !d->serverVT && d->reqSrvVT >= 0)
- {
-+ /* check for plymouth using newer methods */
-+ d->plymouth_is_running = plymouth_is_running ();
-+ if (d->plymouth_is_running) {
-+ /* call plymouth deactivate */
-+ plymouth_prepare_for_transition ();
-+ if (plymouth_has_active_vt ()) {
-+ /* plymouth was displaying a splash screen and has
-+ * terminated leaving it on screen
-+ */
-+ int vt;
-+ vt = get_active_vt ();
-+ if (vt > 0) {
-+ /* start the X server on the active vt */
-+ d->serverVT = vt;
-+ return;
-+ }
-+ }
-+ else {
-+ /* plymouth might have been running but did not display
-+ * a splash screen.
-+ */
-+
-+ /* call plymouth quit and start the X server as usual */
-+ d->plymouth_is_running = !plymouth_quit_without_transition ();
-+ }
-+
-+ /* fallback to old/deprecated method */
-+ } else if ( triggered_to_force_display_on_active_vt() >= 0 ) {
-+ int vt;
-+ vt = get_active_vt();
-+ if (vt > 0) {
-+ d->serverVT = vt;
-+ return;
-+ }
-+ }
-+
-+
- if (d->reqSrvVT && d->reqSrvVT < 16) {
- d->serverVT = d->reqSrvVT;
- } else {
-diff -up kdebase-workspace-4.4.92/kdm/backend/dm.h.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/dm.h
---- kdebase-workspace-4.4.92/kdm/backend/dm.h.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
-+++ kdebase-workspace-4.4.92/kdm/backend/dm.h 2010-07-07 13:48:11.874921158 -0500
-@@ -292,6 +292,8 @@ struct display {
- int authNum; /* number of authorizations */
- char *authFile; /* file to store authorization in */
- char *greeterAuthFile; /* file to store authorization for greeter in */
-+
-+ int plymouth_is_running; /* Plymouth's status */
- };
-
- #define d_location 1
-@@ -404,6 +406,8 @@ int anyDisplaysLeft(void);
- void forEachDisplay(void (*f)(struct display *));
- #ifdef HAVE_VTS
- void forEachDisplayRev(void (*f)(struct display *));
-+/* function for plymouth */
-+int plymouth_quit_with_transition (void);
- #endif
- void removeDisplay(struct display *old);
- struct display
-diff -up kdebase-workspace-4.4.92/kdm/backend/server.c.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/server.c
---- kdebase-workspace-4.4.92/kdm/backend/server.c.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
-+++ kdebase-workspace-4.4.92/kdm/backend/server.c 2010-07-07 13:56:46.960921366 -0500
-@@ -137,6 +137,11 @@ startServerSuccess()
- struct display *d = startingServer;
- d->serverStatus = ignore;
- serverTimeout = TO_INF;
-+ if (d->plymouth_is_running) {
-+ debug( "Quitting Plymouth with transition\n" );
-+ d->plymouth_is_running = !plymouth_quit_with_transition ();
-+ debug ("Is Plymouth still running? %s\n", d->plymouth_is_running ? "yes" : "no");
-+ }
- debug("X server ready, starting session\n");
- startDisplayP2(d);
- }