]> granicus.if.org Git - handbrake/commitdiff
LinGui: Fix a non-fatal Gtk assert when switching the source selection mode
authorjstebbins <jstebbins.hb@gmail.com>
Sat, 6 Sep 2008 19:13:25 +0000 (19:13 +0000)
committerjstebbins <jstebbins.hb@gmail.com>
Sat, 6 Sep 2008 19:13:25 +0000 (19:13 +0000)
from file to folder.

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@1671 b64f7644-9d1e-0410-96f1-a4d463321fa5

gtk/src/callbacks.c

index bd07e34b27b439da07f0a5b3f367a4c661abf200..36013fa231e69e9286a6cd3b55051c03137036c8 100644 (file)
@@ -466,36 +466,29 @@ dvd_device_changed_cb(GtkComboBox *combo, GtkWidget *dialog)
        }
 }
 
-
 void
 source_type_changed_cb(GtkToggleButton *toggle, GtkFileChooser *chooser)
 {
-       gchar *filename;
+       gchar *folder;
        
        g_debug("source_type_changed_cb ()");
+       folder = gtk_file_chooser_get_current_folder (chooser);
        if (gtk_toggle_button_get_active (toggle))
        {
-               filename = gtk_file_chooser_get_filename (chooser);
                gtk_file_chooser_set_action (chooser, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);
-               if (filename != NULL)
-               {
-                       gtk_file_chooser_set_filename(chooser, filename);
-                       g_free(filename);
-               }
                gtk_widget_set_sensitive (dvd_device_combo, FALSE);
                gtk_combo_box_set_active (GTK_COMBO_BOX(dvd_device_combo), 0);
        }
        else
        {
-               filename = gtk_file_chooser_get_filename (chooser);
                gtk_file_chooser_set_action (chooser, GTK_FILE_CHOOSER_ACTION_OPEN);
-               if (filename != NULL)
-               {
-                       gtk_file_chooser_set_filename(chooser, filename);
-                       g_free(filename);
-               }
                gtk_widget_set_sensitive (dvd_device_combo, TRUE);
        }
+       if (folder != NULL)
+       {
+               gtk_file_chooser_set_current_folder(chooser, folder);
+               g_free(folder);
+       }
 }
 
 static GtkWidget*