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\n", vendor);
+ ob_debug_type(OB_DEBUG_SM, "Session manager's vendor: %s", vendor);
if (!strcmp(vendor, "KDE")) {
/* ksmserver guarantees that phase 1 will complete before allowing any