gnome-control-center r8816 - trunk/capplets/sound



Author: jensg
Date: Mon Jul 28 20:51:28 2008
New Revision: 8816
URL: http://svn.gnome.org/viewvc/gnome-control-center?rev=8816&view=rev

Log:
2008-07-28  Jens Granseuer  <jensgr gmx net>

	* sound-theme.c: (get_sound_filename): fix critical warning when music
	directory isn't set

	* (setting_column_edited): fix more leaks

	* (theme_changed_custom_reinit): when resetting a theme, also reset
	the preview icon status


Modified:
   trunk/capplets/sound/ChangeLog
   trunk/capplets/sound/sound-theme.c

Modified: trunk/capplets/sound/sound-theme.c
==============================================================================
--- trunk/capplets/sound/sound-theme.c	(original)
+++ trunk/capplets/sound/sound-theme.c	Mon Jul 28 20:51:28 2008
@@ -506,7 +506,8 @@
 		g_free (path);
 	}
 	data_dir = g_get_user_special_dir (G_USER_DIRECTORY_MUSIC);
-	gtk_file_chooser_add_shortcut_folder (GTK_FILE_CHOOSER (chooser), data_dir, NULL);
+	if (data_dir != NULL)
+		gtk_file_chooser_add_shortcut_folder (GTK_FILE_CHOOSER (chooser), data_dir, NULL);
 
 	response = gtk_dialog_run (GTK_DIALOG (chooser));
 	filename = NULL;
@@ -747,7 +748,7 @@
 	if (new_text == NULL)
 		return;
 
-	g_object_get (G_OBJECT (renderer),
+	g_object_get (renderer,
 		      "model", &model,
 		      NULL);
 
@@ -762,13 +763,17 @@
 
 	gtk_tree_model_get_iter_first (model, &iter);
 	do {
+		gint cmp;
+
 		gtk_tree_model_get (model, &iter, 0, &text, 1, &setting, -1);
-		if (g_utf8_collate (text, new_text) == 0) {
+		cmp = g_utf8_collate (text, new_text);
+		g_free (text);
+
+		if (cmp == 0) {
 			if (type == SOUND_TYPE_NORMAL || type == SOUND_TYPE_FEEDBACK || type == SOUND_TYPE_AUDIO_BELL) {
-				char *filename;
 
 				if (setting == SOUND_CUSTOM || (setting == SOUND_CUSTOM_OLD && old_filename == NULL)) {
-					filename = get_sound_filename (dialog);
+					char *filename = get_sound_filename (dialog);
 					if (filename == NULL)
 						break;
 					gtk_tree_store_set (GTK_TREE_STORE (tree_model),
@@ -777,6 +782,7 @@
 							    HAS_PREVIEW_COL, setting != SOUND_OFF,
 							    FILENAME_COL, filename,
 							    -1);
+					g_free (filename);
 				} else if (setting == SOUND_CUSTOM_OLD) {
 					gtk_tree_store_set (GTK_TREE_STORE (tree_model),
 							    &tree_iter,
@@ -904,11 +910,15 @@
 			     gpointer data)
 {
 	int type;
+	gboolean sensitive;
 
-	gtk_tree_model_get (model, iter, TYPE_COL, &type, -1);
+	gtk_tree_model_get (model, iter,
+			    TYPE_COL, &type,
+			    SENSITIVE_COL, &sensitive, -1);
 	if (type != -1 && type != SOUND_TYPE_VISUAL_BELL) {
 		gtk_tree_store_set (GTK_TREE_STORE (model), iter,
 				    SETTING_COL, SOUND_BUILTIN,
+				    HAS_PREVIEW_COL, sensitive,
 				    -1);
 	}
 	return FALSE;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]