From 189a2f4f7ef4fb014ce49f840707ea505856bb0e Mon Sep 17 00:00:00 2001 From: Thomas Wood Date: Tue, 25 Jul 2006 09:39:35 +0000 Subject: [PATCH] Don't attempt to load window manager theme name from an unknown window 2006-07-25 Thomas Wood * gnome-theme-details.c: (window_theme_selection_changed), (gnome_theme_details_update_from_gconf): Don't attempt to load window manager theme name from an unknown window manager (fixes bug 333276 - gnome-theme-manager crashes with xgl/compiz) --- capplets/theme-switcher/ChangeLog | 7 +++++++ capplets/theme-switcher/gnome-theme-details.c | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/capplets/theme-switcher/ChangeLog b/capplets/theme-switcher/ChangeLog index 032d1e6c1..609b53360 100644 --- a/capplets/theme-switcher/ChangeLog +++ b/capplets/theme-switcher/ChangeLog @@ -1,3 +1,10 @@ +2006-07-25 Thomas Wood + + * gnome-theme-details.c: (window_theme_selection_changed), + (gnome_theme_details_update_from_gconf): Don't attempt to load window + manager theme name from an unknown window manager (fixes bug 333276 - + gnome-theme-manager crashes with xgl/compiz) + 2006-07-23 Sebastien Bacher * gtk-theme-selector.desktop.in.in: don't list the Application diff --git a/capplets/theme-switcher/gnome-theme-details.c b/capplets/theme-switcher/gnome-theme-details.c index 4dce31ac8..6a359755c 100644 --- a/capplets/theme-switcher/gnome-theme-details.c +++ b/capplets/theme-switcher/gnome-theme-details.c @@ -207,7 +207,7 @@ static void window_theme_selection_changed (GtkTreeSelection *selection, gpointer data) { - GnomeWindowManager *window_manager; + GnomeWindowManager *window_manager = NULL; GnomeWMSettings wm_settings; GtkTreeIter iter; gchar *window_theme_name; @@ -228,7 +228,7 @@ window_theme_selection_changed (GtkTreeSelection *selection, } window_manager = gnome_wm_manager_get_current (gdk_display_get_default_screen (gdk_display_get_default ())); - if (window_manager != NULL) { + if (window_manager != NULL && strcmp (gnome_window_manager_get_name (window_manager), "No name")) { wm_settings.flags = GNOME_WM_SETTING_THEME; wm_settings.theme = window_theme_name; gnome_window_manager_change_settings (window_manager, &wm_settings); @@ -723,7 +723,7 @@ gnome_theme_details_update_from_gconf (void) GladeXML *dialog; GtkWidget *tree_view; gchar *theme; - GnomeWindowManager *window_manager; + GnomeWindowManager *window_manager = NULL; GnomeWMSettings wm_settings; gnome_theme_details_init (); @@ -741,7 +741,7 @@ gnome_theme_details_update_from_gconf (void) tree_view = WID ("window_theme_treeview"); wm_settings.flags = GNOME_WM_SETTING_THEME; - if (window_manager) { + if (window_manager != NULL && strcmp (gnome_window_manager_get_name (window_manager), "No name")) { gnome_window_manager_get_settings (window_manager, &wm_settings); update_list_something (tree_view, wm_settings.theme); }