From 3d4372aa461a4e3b1fbb5963111f6ce9cde5ed24 Mon Sep 17 00:00:00 2001 From: leigh123linux Date: Oct 16 2015 21:01:11 +0000 Subject: update to 2.8.0 release --- diff --git a/.gitignore b/.gitignore index b33b0a5..ea58993 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ /cinnamon-screensaver-2.6.1.tar.gz /cinnamon-screensaver-2.6.3.tar.gz /cinnamon-screensaver-2.6.4.tar.gz +/cinnamon-screensaver-2.8.0.tar.gz diff --git a/0001-Revert-Fix-zombie-screensavers.patch b/0001-Revert-Fix-zombie-screensavers.patch deleted file mode 100644 index ab10444..0000000 --- a/0001-Revert-Fix-zombie-screensavers.patch +++ /dev/null @@ -1,173 +0,0 @@ -From f2654acb1760fd473dffa28abc1b8e25ca1dbbca Mon Sep 17 00:00:00 2001 -From: leigh123linux -Date: Sat, 1 Aug 2015 15:14:32 +0100 -Subject: [PATCH] Revert "Fix zombie screensavers" - -This reverts commit 7db84a08fa05be09a9fc7d75d93601313bc4ab6a. ---- - src/gs-window-x11.c | 78 +++++++++++++++++++++-------------------------------- - 1 file changed, 31 insertions(+), 47 deletions(-) - -diff --git a/src/gs-window-x11.c b/src/gs-window-x11.c -index 6ed384d..a34f116 100644 ---- a/src/gs-window-x11.c -+++ b/src/gs-window-x11.c -@@ -53,7 +53,7 @@ static void remove_command_watches (GSWindow *window); - - static void gs_window_show_screensaver (GSWindow *window); - static void gs_window_hide_screensaver (GSWindow *window); --static void screensaver_command_finish (GSWindow *window); -+static void gs_window_kill_screensaver (GSWindow *window); - - static gboolean spawn_on_window (GSWindow *window, char *command, int *pid, GIOFunc watch_func, gpointer user_data, gint *watch_id); - -@@ -642,26 +642,7 @@ create_screensaver_socket (GSWindow *window, - gtk_socket_add_id (GTK_SOCKET (window->priv->screensaver), id); - gs_window_show_screensaver (window); - } -- --/* adapted from gspawn.c */ --static int --wait_on_child (int pid) --{ -- int status; -- -- wait_again: -- if (waitpid (pid, &status, 0) < 0) { -- if (errno == EINTR) { -- goto wait_again; -- } else if (errno == ECHILD) { -- ; /* do nothing, child already reaped */ -- } else { -- gs_debug ("waitpid () should not fail in 'GSWindow'"); -- } -- } -- -- return status; --} -+ - - static gboolean - screensaver_command_watch (GIOChannel *source, -@@ -709,14 +690,14 @@ screensaver_command_watch (GIOChannel *source, - - if (finished) { - window->priv->screensaver_watch_id = 0; -- screensaver_command_finish (window); -- -+ gs_window_kill_screensaver (window); - return FALSE; - } - - return TRUE; - } - -+ - static void - gs_window_real_show (GtkWidget *widget) - { -@@ -1157,6 +1138,25 @@ create_keyboard_socket (GSWindow *window, - gtk_socket_add_id (GTK_SOCKET (window->priv->keyboard_socket), id); - } - -+/* adapted from gspawn.c */ -+static int -+wait_on_child (int pid) -+{ -+ int status; -+ -+ wait_again: -+ if (waitpid (pid, &status, 0) < 0) { -+ if (errno == EINTR) { -+ goto wait_again; -+ } else if (errno == ECHILD) { -+ ; /* do nothing, child already reaped */ -+ } else { -+ gs_debug ("waitpid () should not fail in 'GSWindow'"); -+ } -+ } -+ -+ return status; -+} - - static void - kill_keyboard_command (GSWindow *window) -@@ -1189,36 +1189,20 @@ gs_window_hide_screensaver (GSWindow *window) { - } - - static void --kill_screensaver_command (GSWindow *window) --{ -- if (window->priv->screensaver_pid > 0) { -- signal_pid (window->priv->screensaver_pid, SIGTERM); -- } --} -- --static void --screensaver_command_finish (GSWindow *window) -+gs_window_kill_screensaver (GSWindow *window) - { -- g_return_if_fail (GS_IS_WINDOW (window)); -- -- gs_debug ("Screensaver finished"); -- - gs_window_hide_screensaver (window); -- - if (window->priv->screensaver) { - gtk_widget_destroy (window->priv->screensaver); - window->priv->screensaver = NULL; - } -- -- kill_screensaver_command (window); -- - if (window->priv->screensaver_pid > 0) { - window->priv->screensaver_watch_id = 0; -+ signal_pid (window->priv->screensaver_pid, SIGTERM); -+ wait_on_child (window->priv->lock_pid); - -- wait_on_child (window->priv->screensaver_pid); -- g_spawn_close_pid (window->priv->screensaver_pid); -- -- window->priv->screensaver_pid = 0; -+ g_spawn_close_pid (window->priv->lock_pid); -+ window->priv->lock_pid = 0; - } - } - -@@ -1356,7 +1340,7 @@ gs_window_dialog_finish (GSWindow *window) - - gs_debug ("Dialog finished"); - -- /* make sure we finish the keyboard and screensaver thing too */ -+ /* make sure we finish the keyboard thing too */ - keyboard_command_finish (window); - - /* send a signal just in case */ -@@ -1528,7 +1512,7 @@ lock_command_watch (GIOChannel *source, - popdown_dialog (window); - - if (window->priv->dialog_response == DIALOG_RESPONSE_OK) { -- kill_screensaver_command (window); -+ gs_window_kill_screensaver (window); - add_emit_deactivated_idle (window); - } - -@@ -1540,6 +1524,7 @@ lock_command_watch (GIOChannel *source, - return TRUE; - } - -+ - static gboolean - is_logout_enabled (GSWindow *window) - { -@@ -2577,7 +2562,6 @@ gs_window_finalize (GObject *object) - - remove_command_watches (window); - -- screensaver_command_finish (window); - gs_window_dialog_finish (window); - - if (window->priv->background_surface) { --- -2.5.0 - diff --git a/cinnamon-screensaver.spec b/cinnamon-screensaver.spec index cd9c06c..edd056d 100644 --- a/cinnamon-screensaver.spec +++ b/cinnamon-screensaver.spec @@ -3,12 +3,12 @@ %global dbus_glib_version 0.74 %global redhat_menus_version 5.0.1 %global libgnomekbd_version 2.91.1 -%global cinnamon_desktop_version 2.6.3 +%global cinnamon_desktop_version 2.8.0 Summary: Cinnamon Screensaver Name: cinnamon-screensaver -Version: 2.6.4 -Release: 4%{?dist} +Version: 2.8.0 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ URL: http://cinnamon.linuxmint.com @@ -17,10 +17,9 @@ URL: http://cinnamon.linuxmint.com # for git # wget https://github.com/linuxmint/cinnamon-screensaver/tarball/%%{_internal_version} -O cinnamon-screensaver-%%{version}.git%%{_internal_version}.tar.gz #Source0: http://leigh123linux.fedorapeople.org/pub/cinnamon-screensaver/source/cinnamon-screensaver-%%{version}.git%%{_internal_version}.tar.gz -Source0: http://leigh123linux.fedorapeople.org/pub/cinnamon-screensaver/source/%%{name}-%{version}.tar.gz +Source0: http://leigh123linux.fedorapeople.org/pub/cinnamon-screensaver/source/%{name}-%{version}.tar.gz Patch0: cinnamon-screensaver-2.20.0-selinux-permit.patch -Patch1: screensaver.patch BuildRequires: pkgconfig(dbus-glib-1) >= %{dbus_glib_version} BuildRequires: pkgconfig(cinnamon-desktop) >= %{cinnamon_desktop_version} @@ -72,7 +71,6 @@ you may need to use the Esc key to get the unlock screen. %prep %setup -q %patch0 -p1 -%patch1 -p1 echo "ACLOCAL_AMFLAGS = -I m4" >> Makefile.am echo "AC_CONFIG_MACRO_DIR([m4])" >> configure.ac @@ -106,6 +104,9 @@ desktop-file-install \ %{_datadir}/cinnamon-screensaver/ %changelog +* Fri Oct 16 2015 Leigh Scott - 2.8.0-1 +- update to 2.8.0 release + * Mon Aug 24 2015 Leigh Scott - 2.6.4-4 - Try upstream commits to fix bz 1234998 diff --git a/screensaver.patch b/screensaver.patch deleted file mode 100644 index e6c6c5a..0000000 --- a/screensaver.patch +++ /dev/null @@ -1,57 +0,0 @@ ---- a/src/gs-window-x11.c -+++ b/src/gs-window-x11.c -@@ -631,6 +631,14 @@ - #endif - } - -+static gboolean -+on_screensaver_plug_removed (GtkSocket *socket, GSWindow *window) -+{ -+ gtk_widget_hide (GTK_WIDGET (socket)); -+ window->priv->screensaver = NULL; -+ return FALSE; -+} -+ - static void - create_screensaver_socket (GSWindow *window, - guint32 id) -@@ -639,6 +647,10 @@ - - gtk_stack_add_named (GTK_STACK (window->priv->stack), window->priv->screensaver, "screensaver"); - gtk_widget_show (window->priv->screensaver); -+ -+ g_signal_connect (window->priv->screensaver, "plug-removed", -+ G_CALLBACK (on_screensaver_plug_removed), window); -+ - gtk_socket_add_id (GTK_SOCKET (window->priv->screensaver), id); - gs_window_show_screensaver (window); - } -@@ -895,6 +907,8 @@ - g_return_if_fail (GS_IS_WINDOW (window)); - - gs_window_cancel_unlock_request (window); -+ -+ screensaver_command_finish (window); - - gtk_widget_destroy (GTK_WIDGET (window)); - } -@@ -2577,7 +2591,6 @@ - - remove_command_watches (window); - -- screensaver_command_finish (window); - gs_window_dialog_finish (window); - - if (window->priv->background_surface) { ---- a/src/gs-lock-plug.c -+++ b/src/gs-lock-plug.c -@@ -1561,8 +1561,7 @@ - - hbox_user = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); - gtk_box_pack_start (GTK_BOX (plug->priv->vbox), hbox_user, FALSE, FALSE, 0); -- gtk_misc_set_alignment (GTK_MISC (hbox_user), 0.5, 0.5); -- -+ - plug->priv->auth_face_image = gtk_image_new (); - gtk_box_pack_start (GTK_BOX (hbox_user), plug->priv->auth_face_image, TRUE, TRUE, 0); - gtk_misc_set_alignment (GTK_MISC (plug->priv->auth_face_image), 1, 0.5); diff --git a/sources b/sources index 4a0372e..8503c43 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -421be7dab37f92509eeee8a46edd0056 cinnamon-screensaver-2.6.4.tar.gz +946f44c5243e7a5852dfa06a9a1c9a08 cinnamon-screensaver-2.8.0.tar.gz