|
|
GtkWidget *chooser; | GtkWidget *chooser; |
gchar *filename; | gchar *filename; |
gchar *s; | gchar *s; |
|
gchar *safe_filename; |
| |
g_return_if_fail (THUNAR_UCA_IS_EDITOR (uca_editor)); | g_return_if_fail (THUNAR_UCA_IS_EDITOR (uca_editor)); |
| |
|
|
if (gtk_dialog_run (GTK_DIALOG (chooser)) == GTK_RESPONSE_ACCEPT) | if (gtk_dialog_run (GTK_DIALOG (chooser)) == GTK_RESPONSE_ACCEPT) |
{ | { |
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooser)); | filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooser)); |
s = g_strconcat (filename, " %f", NULL); |
/* Bug 3105: Add quotes, if the path to filename contains spaces */ |
|
if (strstr (filename, " ") == NULL) |
|
/* No spaces in filename, it's safe to use the filename as it is */ |
|
safe_filename = g_strdup(filename); |
|
else |
|
/* filename contains spaces, add quotes */ |
|
safe_filename = g_strdup_printf ("\"%s\"", filename); |
|
|
|
s = g_strconcat (safe_filename, " %f", NULL); |
gtk_entry_set_text (GTK_ENTRY (uca_editor->command_entry), s); | gtk_entry_set_text (GTK_ENTRY (uca_editor->command_entry), s); |
g_free (filename); | g_free (filename); |
|
g_free (safe_filename); |
g_free (s); | g_free (s); |
} | } |
| |