gnome-libs patch to fix session management bug
- From: John Harper <john dcs warwick ac uk>
- To: gnome-hackers gnome org
- Subject: gnome-libs patch to fix session management bug
- Date: Mon, 5 Feb 2001 16:32:12 -0800
The ChangeLog should explain why this is necessary - currently, GNOME
apps can prevent a KDE session from logging out, since they make it
look like saving the session state failed, even when they have no such
state.
John
Index: libgnomeui/ChangeLog
===================================================================
RCS file: /cvs/gnome/gnome-libs/libgnomeui/ChangeLog,v
retrieving revision 1.1161.4.104
diff -u -r1.1161.4.104 ChangeLog
--- libgnomeui/ChangeLog 2001/01/23 03:29:07 1.1161.4.104
+++ libgnomeui/ChangeLog 2001/02/06 00:15:12
@@ -1,3 +1,21 @@
+2001-01-29 John Harper <jsh eazel com>
+
+ * gnome-client.c (client_save_yourself_callback): commented out
+ the code that sets client->save_successfull (sic) to false if
+ the "save_yourself" signal wasn't emitted.
+
+ Since the KDE session manager actually cares about the
+ `success' field of the SaveYourselfDone message (unlike
+ gnome-session, which totally ignores it), the original logic
+ had the effect of making KDE unable to shutdown when any GNOME
+ apps that haven't connected to the "save_yourself" signal are
+ running.
+
+ Perhaps a better fix would be to set success = False only if
+ "save_session" wasn't emitted _and_ there are functions
+ connected to this signal. But since it makes no difference to
+ gnome-session I'll leave it for now..
+
2001-01-22 Miguel de Icaza <miguel ximian com>
* gnome-dialog.c (gnome_dialog_set_default): Do not grab focus.
Index: libgnomeui/gnome-client.c
===================================================================
RCS file: /cvs/gnome/gnome-libs/libgnomeui/gnome-client.c,v
retrieving revision 1.80.4.2
diff -u -r1.80.4.2 gnome-client.c
--- libgnomeui/gnome-client.c 2000/05/04 10:51:24 1.80.4.2
+++ libgnomeui/gnome-client.c 2001/02/06 00:15:12
@@ -735,8 +735,16 @@
fast,
&ret);
+#ifdef BREAK_KDE_SESSION_MANAGER
+ /* <jsh> The KDE session manager actually cares about the `success'
+ field of the SaveYourselfDone message (unlike gnome-session, which
+ totally ignores it. Hence the code below has the effect of making
+ KDE unable to shutdown when any GNOME apps are running that haven't
+ connected to the "save_yourself" signal. */
+
if (!client->save_yourself_emitted)
client->save_successfull= FALSE;
+#endif
client_save_yourself_possibly_done (client);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]