diff options
Diffstat (limited to 'extra/thunar/fix-launching-multiple-files-7456.patch')
-rw-r--r-- | extra/thunar/fix-launching-multiple-files-7456.patch | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/extra/thunar/fix-launching-multiple-files-7456.patch b/extra/thunar/fix-launching-multiple-files-7456.patch deleted file mode 100644 index 40d581553..000000000 --- a/extra/thunar/fix-launching-multiple-files-7456.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 379b8b9f350cb362735eb0e2a0e9471a898f2664 Mon Sep 17 00:00:00 2001 -From: John Lindgren <john.lindgren@aol.com> -Date: Sun, 26 Feb 2012 18:52:24 +0000 -Subject: Fix handling %U when launching multiple files with an app (bug #7456). - -GIO returns a newly allocated GAppInfo every time -g_app_info_get_default_for_type() is called. This means that if we use a -GHashTable and g_direct_hash() to associate GAppInfos with files to be -launched with each of them, we will actually end up with multiple -GAppInfos that are the same, and each of them will only have a single -file associated. - -To fix this, we now use a fake hash function that causes GHashTable to -always search the GAppInfo in the collision list. ---- -diff --git a/thunar/thunar-launcher.c b/thunar/thunar-launcher.c -index f479cf9..9f96b87 100644 ---- a/thunar/thunar-launcher.c -+++ b/thunar/thunar-launcher.c -@@ -546,17 +546,28 @@ thunar_launcher_execute_files (ThunarLauncher *launcher, - - - -+static guint -+thunar_launcher_g_app_info_hash (gconstpointer app_info) -+{ -+ return 0; -+} -+ -+ -+ - static void - thunar_launcher_open_files (ThunarLauncher *launcher, - GList *files) - { -- GAppInfo *app_info; - GHashTable *applications; -+ GAppInfo *app_info; - GList *file_list; - GList *lp; - -- /* allocate a hash table to associate applications to URIs */ -- applications = g_hash_table_new_full (g_direct_hash, -+ /* allocate a hash table to associate applications to URIs. since GIO allocates -+ * new GAppInfo objects every time, g_direct_hash does not work. we therefor use -+ * a fake hash function to always hit the collision list of the hash table and -+ * avoid storing multiple equal GAppInfos by means of g_app_info_equal(). */ -+ applications = g_hash_table_new_full (thunar_launcher_g_app_info_hash, - (GEqualFunc) g_app_info_equal, - (GDestroyNotify) g_object_unref, - (GDestroyNotify) thunar_g_file_list_free); --- -cgit v0.9.0.2 |