diff options
author | Michał Masłowski <mtjm@mtjm.eu> | 2012-03-14 10:24:35 +0100 |
---|---|---|
committer | Michał Masłowski <mtjm@mtjm.eu> | 2012-03-14 10:24:35 +0100 |
commit | a4f3ca8891e50241ac2ca144949e92b26920ffaf (patch) | |
tree | d31841075429e437c4908580e8ec074f2fe40aa5 /extra/thunar | |
parent | 3156702a5deccd61451be9f7d8ba0fd212a3043b (diff) | |
parent | 01a0c4bc740842efa3bf1a7e1d6c8be5656e4e2a (diff) |
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts:
community/aspell-ca/PKGBUILD
community/corkscrew/PKGBUILD
cross/mips64el-unknown-linux-gnu-binutils/PKGBUILD
extra/gstreamer0.10-base/PKGBUILD
extra/gstreamer0.10-good/PKGBUILD
extra/gstreamer0.10-ugly/PKGBUILD
extra/libxi/PKGBUILD
extra/mesa/PKGBUILD
extra/mkvtoolnix/PKGBUILD
extra/mpc/PKGBUILD
extra/poppler/PKGBUILD
extra/xf86-video-siliconmotion/PKGBUILD
extra/xorg-server/PKGBUILD
gnome-unstable/gconf/PKGBUILD
gnome-unstable/gnome-desktop/PKGBUILD
gnome-unstable/network-manager-applet/PKGBUILD
gnome-unstable/vte3/PKGBUILD
multilib/chuck/PKGBUILD
multilib/lib32-libpciaccess/PKGBUILD
multilib/lib32-libx11/PKGBUILD
multilib/lib32-libxcb/PKGBUILD
multilib/lib32-libxcb/libxcb-1.1-no-pthread-stubs.patch
multilib/lib32-libxft/PKGBUILD
multilib/lib32-libxi/PKGBUILD
multilib/lib32-llvm/PKGBUILD
multilib/lib32-mesa/PKGBUILD
testing/grep/PKGBUILD
testing/sudo/PKGBUILD
testing/xf86-input-joystick/PKGBUILD
testing/xf86-input-wacom/PKGBUILD
Diffstat (limited to 'extra/thunar')
-rw-r--r-- | extra/thunar/PKGBUILD | 22 | ||||
-rw-r--r-- | extra/thunar/fix-crash-8168.patch | 32 | ||||
-rw-r--r-- | extra/thunar/fix-launching-multiple-files-7456.patch | 53 | ||||
-rw-r--r-- | extra/thunar/fix-segfault-on-rename.patch | 27 | ||||
-rw-r--r-- | extra/thunar/fix-sorting-of-large-numbers-5356.patch | 32 |
5 files changed, 161 insertions, 5 deletions
diff --git a/extra/thunar/PKGBUILD b/extra/thunar/PKGBUILD index cb0eab8ee..0aa2df987 100644 --- a/extra/thunar/PKGBUILD +++ b/extra/thunar/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 149974 2012-02-11 23:31:34Z allan $ +# $Id: PKGBUILD 153248 2012-03-12 14:40:08Z tpowa $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Andrew Simmons <andrew.simmons@gmail.com> pkgname=thunar pkgver=1.2.3 -pkgrel=4 +pkgrel=5 pkgdesc="Modern file manager for Xfce" arch=('i686' 'x86_64' 'mips64el') url="http://thunar.xfce.org" @@ -22,12 +22,24 @@ optdepends=('gvfs: for trash support, mounting with udisk and remote filesystems 'thunar-media-tags-plugin: view/edit id3/ogg tags') options=('!libtool') install=$pkgname.install -source=(http://archive.xfce.org/src/xfce/${pkgname}/1.2/Thunar-$pkgver.tar.bz2) -sha256sums=('e66aa9ad61a9202e15cc7c5fffc7b961da9ab3b4428f874c1ec8e46eb4ffaca6') +source=(http://archive.xfce.org/src/xfce/${pkgname}/1.2/Thunar-$pkgver.tar.bz2 + fix-segfault-on-rename.patch + fix-sorting-of-large-numbers-5356.patch + fix-launching-multiple-files-7456.patch + fix-crash-8168.patch) +md5sums=('0a2c36cdd3cb3a2ab52cbf6055415b85' + '07e568a84f3a24e32d9d37803a250099' + '926dbefb639c429c8acf064922b4fbe0' + '7ef67fa9faa414ba03053dc69f4cdebc' + '54a88687621bcbd5ab7d951a952d3558') build() { cd "$srcdir/Thunar-$pkgver" - + # add fixes from git tree + patch -Np1 -i ../fix-sorting-of-large-numbers-5356.patch + patch -Np1 -i ../fix-launching-multiple-files-7456.patch + patch -Np1 -i ../fix-crash-8168.patch + patch -Np1 -i ../fix-segfault-on-rename.patch ./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib \ diff --git a/extra/thunar/fix-crash-8168.patch b/extra/thunar/fix-crash-8168.patch new file mode 100644 index 000000000..4300c81c6 --- /dev/null +++ b/extra/thunar/fix-crash-8168.patch @@ -0,0 +1,32 @@ +From 71f6f207cfd0194a3f3db83cb5fab694a5036e22 Mon Sep 17 00:00:00 2001 +From: Jannis Pohlmann <jannis@xfce.org> +Date: Sun, 26 Feb 2012 17:38:50 +0000 +Subject: Fix crash when removing an ancestor of the current folder (bug #8168). + +Whenever we release the GFileMonitor of a ThunarFolder, we also need to +disconnect from its signals. Otherwise one of the signal handlers might +still be called, potentially with corrupted user data (which was the +case here). +--- +diff --git a/thunar/thunar-folder.c b/thunar/thunar-folder.c +index 62015fe..4076b8d 100644 +--- a/thunar/thunar-folder.c ++++ b/thunar/thunar-folder.c +@@ -236,6 +236,7 @@ thunar_folder_finalize (GObject *object) + /* disconnect from the file alteration monitor */ + if (G_LIKELY (folder->monitor != NULL)) + { ++ g_signal_handlers_disconnect_matched (folder->monitor, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, folder); + g_file_monitor_cancel (folder->monitor); + g_object_unref (folder->monitor); + } +@@ -705,6 +706,7 @@ thunar_folder_reload (ThunarFolder *folder) + /* disconnect from the file alteration monitor */ + if (G_UNLIKELY (folder->monitor != NULL)) + { ++ g_signal_handlers_disconnect_matched (folder->monitor, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, folder); + g_file_monitor_cancel (folder->monitor); + g_object_unref (folder->monitor); + folder->monitor = NULL; +-- +cgit v0.9.0.2 diff --git a/extra/thunar/fix-launching-multiple-files-7456.patch b/extra/thunar/fix-launching-multiple-files-7456.patch new file mode 100644 index 000000000..40d581553 --- /dev/null +++ b/extra/thunar/fix-launching-multiple-files-7456.patch @@ -0,0 +1,53 @@ +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 diff --git a/extra/thunar/fix-segfault-on-rename.patch b/extra/thunar/fix-segfault-on-rename.patch new file mode 100644 index 000000000..b64a91e08 --- /dev/null +++ b/extra/thunar/fix-segfault-on-rename.patch @@ -0,0 +1,27 @@ +From fb7e7a602473fe2f11c78baacacaad1aea8c9dc6 Mon Sep 17 00:00:00 2001 +From: Nick Schermer <nick@xfce.org> +Date: Wed, 30 Nov 2011 17:45:57 +0000 +Subject: Fix segfault when plugin returns a NULL suffix. + +(cherry picked from commit 6f813ba48553e5b95a83bfa8463b20b8ee4607c4) +--- +diff --git a/thunar/thunar-renamer-model.c b/thunar/thunar-renamer-model.c +index 1aa7b77..91a47e1 100644 +--- a/thunar/thunar-renamer-model.c ++++ b/thunar/thunar-renamer-model.c +@@ -823,10 +823,9 @@ thunar_renamer_model_process_item (ThunarRenamerModel *renamer_model, + /* determine the new suffix */ + suffix = thunarx_renamer_process (renamer_model->renamer, THUNARX_FILE_INFO (item->file), dot + 1, idx); + +- /* generate the new file name */ +- name = g_new (gchar, (dot - display_name) + 1 + strlen (suffix) + 1); +- memcpy (name, display_name, (dot - display_name) + 1); +- memcpy (name + (dot - display_name) + 1, suffix, strlen (suffix) + 1); ++ prefix = g_strndup (display_name, (dot - display_name) + 1); ++ name = g_strconcat (prefix, suffix, NULL); ++ g_free (prefix); + + /* release the suffix */ + g_free (suffix); +-- +cgit v0.9.0.2 diff --git a/extra/thunar/fix-sorting-of-large-numbers-5356.patch b/extra/thunar/fix-sorting-of-large-numbers-5356.patch new file mode 100644 index 000000000..1105eea83 --- /dev/null +++ b/extra/thunar/fix-sorting-of-large-numbers-5356.patch @@ -0,0 +1,32 @@ +From 493db02bdbc6ec667cd04e75a77dff8366ec1bc0 Mon Sep 17 00:00:00 2001 +From: Eric Koegel <eric.koegel@gmail.com> +Date: Sun, 06 Nov 2011 13:58:33 +0000 +Subject: Fix sorting of filenames with large numbers (bug #5356). + +Change compare_by_name_using_number() to use guint64. + +Signed-off-by: Jannis Pohlmann <jannis@xfce.org> +--- +diff --git a/thunar/thunar-file.c b/thunar/thunar-file.c +index 909da25..44cdb31 100644 +--- a/thunar/thunar-file.c ++++ b/thunar/thunar-file.c +@@ -3168,12 +3168,12 @@ static gint + compare_by_name_using_number (const gchar *ap, + const gchar *bp) + { +- guint anum; +- guint bnum; ++ guint64 anum; ++ guint64 bnum; + + /* determine the numbers in ap and bp */ +- anum = strtoul (ap, NULL, 10); +- bnum = strtoul (bp, NULL, 10); ++ anum = strtouq (ap, NULL, 10); ++ bnum = strtouq (bp, NULL, 10); + + /* compare the numbers */ + if (anum < bnum) +-- +cgit v0.9.0.2 |