--- a/src/core/prefs.c +++ b/src/core/prefs.c @@ -1962,6 +1962,10 @@ init_commands (void) static void init_workspace_names (void) { + int i; + for (i = 0; i < MAX_REASONABLE_WORKSPACES; i++) + workspace_names[i] = NULL; + #ifdef HAVE_MATECONF GSList *list, *l; const char *str_val; @@ -1980,14 +1984,15 @@ init_workspace_names (void) mateconf_entry_free (entry); } g_slist_free (list); -#else - int i; +#endif /* HAVE_MATECONF */ + + /* initialise any we didn't see */ for (i = 0; i < MAX_REASONABLE_WORKSPACES; i++) - workspace_names[i] = g_strdup_printf (_("Workspace %d"), i + 1); + if (workspace_names[i]==NULL) + workspace_names[i] = g_strdup_printf (_("Workspace %d"), i + 1); meta_topic (META_DEBUG_PREFS, "Initialized workspace names\n"); -#endif /* HAVE_MATECONF */ } static gboolean