diff options
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 12 | ||||
-rw-r--r-- | bug11983.patch | 83 |
3 files changed, 95 insertions, 6 deletions
@@ -1,7 +1,7 @@ pkgbase = thunar-extended pkgdesc = Thunar with split view, cursor audio preview and extra options for trash, desktop files and user actions pkgver = 1.6.10 - pkgrel = 1 + pkgrel = 2 url = http://thunar.xfce.org install = thunar.install arch = i686 @@ -31,7 +31,7 @@ pkgbase = thunar-extended optdepends = thunar-volman: manages removable devices optdepends = thunar-archive-plugin: create and deflate archives optdepends = thunar-media-tags-plugin: view/edit id3/ogg tags - provides = thunar=1.6.8 + provides = thunar=1.6.10 conflicts = thunar replaces = thunar options = !libtool @@ -40,11 +40,13 @@ pkgbase = thunar-extended source = uca_num_files.patch source = preview.patch source = split_pane.patch + source = bug11983.patch md5sums = 3089e1dca6e408641b07cd9c759dea5e md5sums = d87f154a5fbd3709511ded0c9b9b0317 md5sums = 69aa416e8694b8b608f767769b6dcd98 md5sums = 6302de8c5061fbf769bc2b24e67256f9 md5sums = ce443cf896934131427b7789da130097 + md5sums = 053c83b6d88d2e01d1aa7fe7b5dd8a6e pkgname = thunar-extended @@ -2,7 +2,7 @@ pkgname=thunar-extended pkgver=1.6.10 -pkgrel=1 +pkgrel=2 pkgdesc="Thunar with split view, cursor audio preview and extra options for trash, desktop files and user actions" arch=(i686 x86_64) license=('GPL2' 'LGPL2.1') @@ -10,7 +10,7 @@ url="http://thunar.xfce.org" groups=('xfce4') conflicts=('thunar') replaces=('thunar') -provides=('thunar=1.6.8') +provides=('thunar=1.6.10') depends=('desktop-file-utils' 'libexif' 'hicolor-icon-theme' 'libnotify' 'udev' \ 'gtk2' 'exo' 'libxfce4util' 'libxfce4ui' 'libpng' 'gstreamer0.10') makedepends=('intltool' 'pkgconfig' 'xfce4-panel' 'xfce4-dev-tools') @@ -27,7 +27,8 @@ source=(http://archive.xfce.org/src/xfce/thunar/1.6/Thunar-${pkgver}.tar.bz2 notrash.patch uca_num_files.patch preview.patch - split_pane.patch) + split_pane.patch + bug11983.patch) build() { cd "${srcdir}"/Thunar-${pkgver} @@ -37,6 +38,8 @@ build() { patch -Np1 -i ../uca_num_files.patch patch -Np1 -i ../preview.patch patch -Np1 -i ../split_pane.patch + # Upstream one + patch -Np1 -i ../bug11983.patch mkdir m4 sed -i -e 's/Thunar_CFLAGS/thunar_CFLAGS/' -e 's/Thunar_LDADD/thunar_LDADD/' thunar/Makefile.am @@ -60,4 +63,5 @@ md5sums=('3089e1dca6e408641b07cd9c759dea5e' 'd87f154a5fbd3709511ded0c9b9b0317' '69aa416e8694b8b608f767769b6dcd98' '6302de8c5061fbf769bc2b24e67256f9' - 'ce443cf896934131427b7789da130097') + 'ce443cf896934131427b7789da130097' + '053c83b6d88d2e01d1aa7fe7b5dd8a6e') diff --git a/bug11983.patch b/bug11983.patch new file mode 100644 index 000000000000..197c7a3f3bb5 --- /dev/null +++ b/bug11983.patch @@ -0,0 +1,83 @@ +From 029012f4c39d9d3d9ae617491a69f76f54a4192f Mon Sep 17 00:00:00 2001 +From: Harald Judt <h.judt@gmx.at> +Date: Thu, 2 Jul 2015 10:30:21 +0200 +Subject: Fix crashes when reloading target file after move (bug #11983) + +When moving a file, check the target file for NULL to avoid crashes +or assertions. + +diff --git a/thunar/thunar-file.c b/thunar/thunar-file.c +index 196bb6c..3262dfb 100644 +--- a/thunar/thunar-file.c ++++ b/thunar/thunar-file.c +@@ -795,13 +795,15 @@ thunar_file_monitor (GFileMonitor *monitor, + if (event_type == G_FILE_MONITOR_EVENT_MOVED) + { + /* reload the target file if cached */ ++ if (other_path == NULL) ++ return; + other_file = thunar_file_cache_lookup (other_path); + if (other_file) + thunar_file_reload (other_file); + else + other_file = thunar_file_get (other_path, NULL); + +- if (!other_file) ++ if (other_file == NULL) + return; + + /* notify the thumbnail cache that we can now also move the thumbnail */ +diff --git a/thunar/thunar-folder.c b/thunar/thunar-folder.c +index 217610a..9decb89 100644 +--- a/thunar/thunar-folder.c ++++ b/thunar/thunar-folder.c +@@ -773,27 +773,30 @@ thunar_folder_monitor (GFileMonitor *monitor, + { + /* destroy the old file and update the new one */ + thunar_file_destroy (lp->data); +- file = thunar_file_get(other_file, NULL); +- if (file != NULL && THUNAR_IS_FILE (file)) ++ if (other_file != NULL) + { +- thunar_file_reload (file); +- +- /* if source and target folders are different, also tell +- the target folder to reload for the changes */ +- if (thunar_file_has_parent (file)) ++ file = thunar_file_get(other_file, NULL); ++ if (file != NULL && THUNAR_IS_FILE (file)) + { +- other_parent = thunar_file_get_parent (file, NULL); +- if (other_parent && +- !g_file_equal (thunar_file_get_file(folder->corresponding_file), +- thunar_file_get_file(other_parent))) ++ thunar_file_reload (file); ++ ++ /* if source and target folders are different, also tell ++ the target folder to reload for the changes */ ++ if (thunar_file_has_parent (file)) + { +- thunar_file_reload (other_parent); +- g_object_unref (other_parent); ++ other_parent = thunar_file_get_parent (file, NULL); ++ if (other_parent && ++ !g_file_equal (thunar_file_get_file(folder->corresponding_file), ++ thunar_file_get_file(other_parent))) ++ { ++ thunar_file_reload (other_parent); ++ g_object_unref (other_parent); ++ } + } +- } + +- /* drop reference on the other file */ +- g_object_unref (file); ++ /* drop reference on the other file */ ++ g_object_unref (file); ++ } + } + + /* reload the folder of the source file */ +-- +cgit v0.10.1 + |