diff options
| author | Mikael Magnusson <mikachu@comhem.se> | 2008-03-03 17:10:53 +0100 |
|---|---|---|
| committer | Mikael Magnusson <mikachu@comhem.se> | 2008-03-03 17:10:53 +0100 |
| commit | d78ae0546dae17eda6084a1bd33e63637ba802e5 (patch) | |
| tree | 178e0210cf804c7ea9ed3690bae8b7d81b9fe0bf /openbox/session.c | |
| parent | 4b5373f609e6462995a38cc4f0f50b17cbc8f835 (diff) | |
| parent | 40996c42b3b3dae96338abac1a250a905d0fd8d9 (diff) | |
Merge branch 'backport' into work
Conflicts:
openbox/session.c
Diffstat (limited to 'openbox/session.c')
| -rw-r--r-- | openbox/session.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/openbox/session.c b/openbox/session.c index 3cf8fbe2..ca45adb9 100644 --- a/openbox/session.c +++ b/openbox/session.c @@ -408,7 +408,22 @@ static void sm_save_yourself(SmcConn conn, SmPointer data, gint save_type, ObSMSaveData *savedata = NULL; gchar *vendor; - ob_debug_type(OB_DEBUG_SM, "Session save requested"); +#ifdef DEBUG + { + const gchar *sname = + (save_type == SmSaveLocal ? "SmSaveLocal" : + (save_type == SmSaveGlobal ? "SmSaveGlobal" : + (save_type == SmSaveBoth ? "SmSaveBoth" : "INVALID!!"))); + ob_debug_type(OB_DEBUG_SM, "Session save requested, type %s\n", sname); + } +#endif + + if (save_type == SmSaveGlobal) { + /* we have no data to save. we only store state to get back to where + we were, we don't keep open writable files or anything */ + SmcSaveYourselfDone(conn, TRUE); + return; + } vendor = SmcVendor(sm_conn); ob_debug_type(OB_DEBUG_SM, "Session manager's vendor: %s", vendor); @@ -818,7 +833,7 @@ void session_request_logout(gboolean silent) { if (sm_conn) { SmcRequestSaveYourself(sm_conn, - SmSaveBoth, + SmSaveGlobal, TRUE, /* logout */ (silent ? SmInteractStyleNone : SmInteractStyleAny), |
