summaryrefslogtreecommitdiff
path: root/extra/xfburn
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-10-24 23:14:47 +0000
committerroot <root@rshg054.dnsready.net>2011-10-24 23:14:47 +0000
commit0d7bab226067a44a9f1b978924e8201a3fa60764 (patch)
tree7c17a659e61f8c790e75160fcecc9a9f63df2500 /extra/xfburn
parentc0bc46632845dfc241d3290d8d3193287eaeb02e (diff)
Mon Oct 24 23:14:47 UTC 2011
Diffstat (limited to 'extra/xfburn')
-rwxr-xr-xextra/xfburn/PKGBUILD14
-rw-r--r--extra/xfburn/fix_empty_dir_segfault.diff48
2 files changed, 58 insertions, 4 deletions
diff --git a/extra/xfburn/PKGBUILD b/extra/xfburn/PKGBUILD
index 131dc466a..7ff0c7cf1 100755
--- a/extra/xfburn/PKGBUILD
+++ b/extra/xfburn/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 119475 2011-04-11 17:44:33Z andyrtr $
+# $Id: PKGBUILD 141077 2011-10-23 09:32:55Z andyrtr $
# Maintainer: Tobias Kieslich <tobias funnychar archlinux.org>
# Contributor: Alois Nespor alois.nespor@gmail.com
pkgname=xfburn
pkgver=0.4.3
-pkgrel=4
+pkgrel=5
arch=('i686' 'x86_64')
pkgdesc="a simple CD/DVD burning tool based on libburnia libraries"
url="http://goodies.xfce.org/projects/applications/xfburn"
@@ -14,11 +14,17 @@ install=${pkgname}.install
depends=('libburn>=1.0.6.pl00' 'libisofs>=1.0.6' 'libxfcegui4>=4.8.1' 'exo>=0.6.0' 'gstreamer0.10-base>=0.10.26'
'hicolor-icon-theme' 'desktop-file-utils' 'librsvg')
makedepends=('intltool')
-source=(http://www.xfce.org/archive/src/apps/xfburn/0.4/$pkgname-$pkgver.tar.bz2)
-md5sums=('147cdc2d909e751125be16103b8dc81f')
+source=(http://www.xfce.org/archive/src/apps/xfburn/0.4/$pkgname-$pkgver.tar.bz2
+ fix_empty_dir_segfault.diff)
+md5sums=('147cdc2d909e751125be16103b8dc81f'
+ '82a85be2442c42ab93de95e21c6c11b0')
build() {
cd ${srcdir}/$pkgname-$pkgver
+
+ # fix https://bugs.archlinux.org/task/26121
+ patch -Np0 -i ${srcdir}/fix_empty_dir_segfault.diff
+
./configure --prefix=/usr \
--enable-gstreamer \
--enable-dbus \
diff --git a/extra/xfburn/fix_empty_dir_segfault.diff b/extra/xfburn/fix_empty_dir_segfault.diff
new file mode 100644
index 000000000..af3fe07c8
--- /dev/null
+++ b/extra/xfburn/fix_empty_dir_segfault.diff
@@ -0,0 +1,48 @@
+--- xfburn/xfburn-data-composition.c 2011-02-17 16:37:03.000000000 +0100
++++ xfburn/xfburn-data-composition_patched.c 2011-02-17 16:40:40.000000000 +0100
+@@ -1874,26 +1874,29 @@
+ g_error ("Failed adding %s as a node to the image: code %X!", src, r);
+ }
+
+- basename = g_path_get_basename (src);
++ /* Check names only for items not manually created (#613563) */
++ if (type != DATA_COMPOSITION_TYPE_DIRECTORY || src != NULL) {
++ basename = g_path_get_basename (src);
++
++ /* check if the file has been renamed */
++ if (strcmp (basename, name) != 0) {
++ /* rename the iso_node */
++ r = iso_node_set_name (node, name);
++
++ if (r == 0) {
++ /* The first string is the renamed name, the second one the original name */
++ xfce_warn (_("Duplicate filename '%s' for '%s'"), name, src);
++
++ g_free (basename);
++ g_free (name);
++ g_free (src);
+
+- /* check if the file has been renamed */
+- if (strcmp (basename, name) != 0) {
+- /* rename the iso_node */
+- r = iso_node_set_name (node, name);
+-
+- if (r == 0) {
+- /* The first string is the renamed name, the second one the original name */
+- xfce_warn (_("Duplicate filename '%s' for '%s'"), name, src);
+-
+- g_free (basename);
+- g_free (name);
+- g_free (src);
+-
+- continue;
++ continue;
++ }
+ }
++ g_free (basename);
+ }
+
+- g_free (basename);
+ g_free (name);
+ g_free (src);
+