diff options
author | Felix Bellaby <felix@src.gnome.org> | 1999-02-10 22:57:21 +0000 |
---|---|---|
committer | Felix Bellaby <felix@src.gnome.org> | 1999-02-10 22:57:21 +0000 |
commit | 110ceb80bcce0644d2b0fea5de302b5a94472d00 (patch) | |
tree | b3713e527717e9d144b517aef95902fcdee73542 | |
parent | e9990b00b5ccde3e9b0cd33005566263747cf32f (diff) | |
download | gnome-session-110ceb80bcce0644d2b0fea5de302b5a94472d00.tar.gz |
do not call discard commands on clients in the pending_list. export
* save.c (delete_session): do not call discard commands on clients
in the pending_list.
* manager.c: export pending_list to save.c
-rw-r--r-- | gnome-session/ChangeLog | 6 | ||||
-rw-r--r-- | gnome-session/manager.c | 2 | ||||
-rw-r--r-- | gnome-session/save.c | 4 |
3 files changed, 11 insertions, 1 deletions
diff --git a/gnome-session/ChangeLog b/gnome-session/ChangeLog index 19dd1a10..6f33c539 100644 --- a/gnome-session/ChangeLog +++ b/gnome-session/ChangeLog @@ -1,3 +1,9 @@ +1999-02-10 Felix Bellaby <felix@pooh.u-net.com> + + * save.c (delete_session): do not call discard commands on clients + in the pending_list. + * manager.c: export pending_list to save.c + 1999-02-09 Felix Bellaby <felix@pooh.u-net.com> * manager.c (close_connection): restart RestartImmediately clients diff --git a/gnome-session/manager.c b/gnome-session/manager.c index fd75d9a0..f173457b 100644 --- a/gnome-session/manager.c +++ b/gnome-session/manager.c @@ -43,7 +43,7 @@ static GSList *load_request_list = NULL; static GSList *start_list = NULL; /* List of clients which have been started but have yet to register */ -static GSList *pending_list = NULL; +GSList *pending_list = NULL; /* List of clients which have been purged from the pending list since they have failed to register within our timeout. */ diff --git a/gnome-session/save.c b/gnome-session/save.c index ca921c9b..96a27b5e 100644 --- a/gnome-session/save.c +++ b/gnome-session/save.c @@ -44,6 +44,7 @@ static char *session_name = NULL; extern gboolean base_loaded; extern GSList* live_list; extern GSList* zombie_list; +extern GSList* pending_list; typedef enum { @@ -416,6 +417,9 @@ delete_session (const char *name) cur_client = find_client_by_id (zombie_list, old_client->id); if (!cur_client) cur_client = find_client_by_id (live_list, old_client->id); + /* Or perhaps one that we are restarting ? */ + if (!cur_client) + cur_client = find_client_by_id (pending_list, old_client->id); if (find_vector_property (old_client, SmDiscardCommand, &old_argc, &old_argv)) |