GNOME Bugzilla – Bug 434842
Sessions with multiple program instances are not saved properly
Last modified: 2007-05-09 20:15:05 UTC
Please describe the problem: The session manager is not saving sessions properly when multiple instances of an application are running, i.e. several windows opened at different locations and with different arguments. This happens frequently, for example, with xterms. Steps to reproduce: 1. Start a desktop session 2. Open place, and resize several xterms 3. Save session with gnome-session-save 4. Logout and log back in Actual results: Only one xterm instance is created. Expected results: Each of the xterms should be restarted with its correct state. Does this happen every time? Yes, and for multiple versions of gnome-session. Other information: I observe this behavior on Fedora with its native build of GNOME, but a bug in their bug system (Red Hat bugzilla bug number 185114) has a discussion which points to the upstream source gnome-session/save.c as having the problem. This is a regression in the past year or two as older versions of GNOME on Fedora would work properly. For traditional Unix desktop users, this is a showstopper which requires switching to a different session manager so that xterms and other typical applications are managed properly. It is not appropriate to assume only one instance of an application will be created in a session.
I have the same problem. Interesting comment on this from the RH-bug: --- Olivier Baudron (olivier.baudron@m4x.org) on 2006-03-30 06:55 EST: Same problem here. Looking in the source, I found that: This is not a bug but a feature (TM). A patch against FC5 (gnome-session-2.14.0-1) follows: --- gnome-session-2.14.0/gnome-session/save.c 2006-03-28 20:20:44 +0200 +++ gnome-session-2.14.0/gnome-session/save.c 2006-03-30 13:41:21 +0200 @@ -788,7 +788,8 @@ if (list) session->client_list = g_slist_concat (session->client_list, list); - session->client_list = remove_duplicated_clients (session->client_list); + /* Allow same program to be started multiple times (xterm, ...) */ + /* session->client_list = remove_duplicated_clients (session->client_list); */ return session; } --- IMHO this is anything but a feature, it smells to my like its papering over some real bug where some programs would add themselves more then 1 time to the to be started list. Please revert this "feature" and fix the real culprits.
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find. *** This bug has been marked as a duplicate of 341286 ***