gtk_file_chooser_get_filename|uri returns a char* which must be freed

pull/1441/head
Christopher Lam 4 years ago
parent a27adb78e3
commit bb830cec3a

@ -3478,6 +3478,7 @@ gnc_option_set_ui_value_pixmap (GNCOption *option, gboolean use_default,
g_strdup (string), g_free);
DEBUG("Set %s, retrieved %s", string, test ? test : "(null)");
gnc_image_option_update_preview_cb (GTK_FILE_CHOOSER(widget), option);
g_free (test);
}
LEAVE("FALSE");
g_free ((gpointer *) string);

@ -71,7 +71,6 @@ gnc_file_dialog_int (GtkWindow *parent,
)
{
GtkWidget *file_box;
const char *internal_name;
char *file_name = NULL;
gchar * okbutton = NULL;
const gchar *ok_icon = NULL;
@ -171,17 +170,17 @@ gnc_file_dialog_int (GtkWindow *parent,
else
{
/* look for constructs like postgres://foo */
internal_name = gtk_file_chooser_get_uri(GTK_FILE_CHOOSER (file_box));
if (internal_name != NULL)
file_name = gtk_file_chooser_get_uri(GTK_FILE_CHOOSER (file_box));
if (file_name != NULL)
{
if (strstr (internal_name, "file://") == internal_name)
if (strstr (file_name, "file://") == file_name)
{
g_free (file_name);
/* nope, a local file name */
internal_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER (file_box));
file_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER (file_box));
}
file_name = g_strdup(internal_name);
file_name_list = g_slist_append (file_name_list, file_name);
}
file_name_list = g_slist_append (file_name_list, file_name);
}
}
gtk_widget_destroy(GTK_WIDGET(file_box));

@ -190,10 +190,10 @@ fcb_clicked_cb (GtkButton *button, GtkWidget *ok_button)
DEBUG("Native file uri is '%s'", uri);
g_object_set_data_full (G_OBJECT(button), "uri", g_strdup (uri), g_free);
g_free (uri);
g_free (filename);
g_free (unescape_filename);
}
g_free (uri);
file_ok_cb (button, ok_button);
}
g_object_unref (native);

@ -739,7 +739,10 @@ CsvImpPriceAssist::check_for_valid_filename ()
{
auto file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(file_chooser));
if (!file_name || g_file_test (file_name, G_FILE_TEST_IS_DIR))
{
g_free (file_name);
return false;
}
auto filepath = gnc_uri_get_path (file_name);
auto starting_dir = g_path_get_dirname (filepath);

@ -702,7 +702,10 @@ CsvImpTransAssist::check_for_valid_filename ()
{
auto file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(file_chooser));
if (!file_name || g_file_test (file_name, G_FILE_TEST_IS_DIR))
{
g_free (file_name);
return false;
}
auto filepath = gnc_uri_get_path (file_name);
auto starting_dir = g_path_get_dirname (filepath);

Loading…
Cancel
Save