+
+ vals[i].value = g_strdup("--sm-client-id");
+ vals[i].length = strlen("--sm-client-id") + 1;
+ vals[i+1].value = ob_sm_id;
+ vals[i+1].length = strlen(ob_sm_id) + 1;
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i].value);
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i+1].value);
+
+ vals[i+2].value = g_strdup("--sm-save-file");
+ vals[i+2].length = strlen("--sm-save-file") + 1;
+ vals[i+3].value = ob_sm_save_file;
+ vals[i+3].length = strlen(ob_sm_save_file) + 1;
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i+2].value);
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i+3].value);
+
+ if (ob_config_type) {
+ vals[i+4].value = g_strdup("--config-namespace");
+ vals[i+4].length = strlen("--config-namespace") + 1;
+ vals[i+5].value = ob_config_type;
+ vals[i+5].length = strlen(ob_config_type) + 1;
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i+4].value);
+ ob_debug_type(OB_DEBUG_SM, " %s\n", vals[i+5].value);
+ }
+
+ SmcSetProperties(sm_conn, 1, &list);
+ g_free(prop.name);
+ g_free(prop.type);
+ g_free(vals[i].value);
+ g_free(vals[i+2].value);
+ if (ob_config_type)
+ g_free(vals[i+4].value);
+ g_free(vals);
+}
+
+static ObSMSaveData *sm_save_get_data()
+{
+ ObSMSaveData *savedata = g_new0(ObSMSaveData, 1);
+ savedata->focus_client = focus_client;
+ savedata->desktop = screen_desktop;
+ return savedata;