summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2007-02-12 19:14:05 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2007-02-12 19:14:05 +0000
commit79b2664e4210011a0ae6f8c60bfd6581a1e7a5bb (patch)
tree7beed79f68c9b3c967e94c636c00adb53a7df110 /xfce-base/thunar
parentstable x86; bug 163541 (diff)
downloadhistorical-79b2664e4210011a0ae6f8c60bfd6581a1e7a5bb.tar.gz
historical-79b2664e4210011a0ae6f8c60bfd6581a1e7a5bb.tar.bz2
historical-79b2664e4210011a0ae6f8c60bfd6581a1e7a5bb.zip
Fix unaligned memory access in exif code -patch from upstream bugzilla.
Package-Manager: portage-2.1.2-r9
Diffstat (limited to 'xfce-base/thunar')
-rw-r--r--xfce-base/thunar/ChangeLog9
-rw-r--r--xfce-base/thunar/Manifest19
-rw-r--r--xfce-base/thunar/files/digest-thunar-0.8.0-r23
-rw-r--r--xfce-base/thunar/files/thunar-0.8.0-jpeg.patch168
-rw-r--r--xfce-base/thunar/thunar-0.8.0-r2.ebuild73
5 files changed, 267 insertions, 5 deletions
diff --git a/xfce-base/thunar/ChangeLog b/xfce-base/thunar/ChangeLog
index caf28e7f1177..d66b470d65a9 100644
--- a/xfce-base/thunar/ChangeLog
+++ b/xfce-base/thunar/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for xfce-base/thunar
# Copyright 2000-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/xfce-base/thunar/ChangeLog,v 1.18 2007/02/04 17:11:37 drac Exp $
+# $Header: /var/cvsroot/gentoo-x86/xfce-base/thunar/ChangeLog,v 1.19 2007/02/12 19:14:05 drac Exp $
+
+*thunar-0.8.0-r2 (12 Feb 2007)
+
+ 12 Feb 2007; Samuli Suominen <drac@gentoo.org>
+ +files/thunar-0.8.0-jpeg.patch, +thunar-0.8.0-r2.ebuild:
+ Fix unaligned memory access in exif code -patch from upstream bugzilla, bug
+ 2880.
*thunar-0.8.0-r1 (04 Feb 2007)
diff --git a/xfce-base/thunar/Manifest b/xfce-base/thunar/Manifest
index 53d6c0a88c18..f625c6d06347 100644
--- a/xfce-base/thunar/Manifest
+++ b/xfce-base/thunar/Manifest
@@ -1,12 +1,20 @@
+AUX thunar-0.8.0-jpeg.patch 6399 RMD160 60c65bd1384d602448e6f96439dc36ca8daabaab SHA1 736971b2553155d9b3ed52a62c4c33bdd5387c59 SHA256 c4656828db862e59036adf8ef7f5b1d6ddbad2ca5abf8b72cc8464652a92ddd8
+MD5 58a26314feec636ba5e51affb3f90d36 files/thunar-0.8.0-jpeg.patch 6399
+RMD160 60c65bd1384d602448e6f96439dc36ca8daabaab files/thunar-0.8.0-jpeg.patch 6399
+SHA256 c4656828db862e59036adf8ef7f5b1d6ddbad2ca5abf8b72cc8464652a92ddd8 files/thunar-0.8.0-jpeg.patch 6399
DIST Thunar-0.8.0.tar.bz2 6205993 RMD160 95d29cca64c102b7d8bdcc0592f6fcab7198148b SHA1 1adcba7b86d9219b0bd7eb8c16d5719aa8393d98 SHA256 460484f8397a0e0e4115d1629d2ae027b5052dc2c564d4a4629a3557e4a055f9
EBUILD thunar-0.8.0-r1.ebuild 2010 RMD160 856e9453d5edc2152adb84a85d84319411be6258 SHA1 620ed173e3b8e1faeea933e97c9f34505fffbf98 SHA256 00515fa7e81157cf6b844ba7ddb1386662be60bc5fa0fdd288f6dd4e601a1733
MD5 fe7b407871ea9691ad024f36d51b5f9f thunar-0.8.0-r1.ebuild 2010
RMD160 856e9453d5edc2152adb84a85d84319411be6258 thunar-0.8.0-r1.ebuild 2010
SHA256 00515fa7e81157cf6b844ba7ddb1386662be60bc5fa0fdd288f6dd4e601a1733 thunar-0.8.0-r1.ebuild 2010
-MISC ChangeLog 3184 RMD160 86517904c6747f7d2881c18442e4fe4c55eab96f SHA1 17ae980113d7cb55fb37b05f5b49675cbaeed6e1 SHA256 41d07eff2427f807209adcc9a27535ea08835f572ae4d2cfa0dec87ee2ad6b77
-MD5 335ba821fc1d6c7d32b6b37b203453c9 ChangeLog 3184
-RMD160 86517904c6747f7d2881c18442e4fe4c55eab96f ChangeLog 3184
-SHA256 41d07eff2427f807209adcc9a27535ea08835f572ae4d2cfa0dec87ee2ad6b77 ChangeLog 3184
+EBUILD thunar-0.8.0-r2.ebuild 2089 RMD160 7af60058646c2aaf72b47a09a8e11db1a48ffd22 SHA1 ea29eb3e1aff95f12f2575f70cf174ffce737413 SHA256 3400fd0b087d82c0f2c7eb91eb449ad179d22cf817d43caf5ede1c339b949f90
+MD5 fe41c74750c3b18a00e329e455cd3eb6 thunar-0.8.0-r2.ebuild 2089
+RMD160 7af60058646c2aaf72b47a09a8e11db1a48ffd22 thunar-0.8.0-r2.ebuild 2089
+SHA256 3400fd0b087d82c0f2c7eb91eb449ad179d22cf817d43caf5ede1c339b949f90 thunar-0.8.0-r2.ebuild 2089
+MISC ChangeLog 3411 RMD160 b0b32f75acf924cbf23d64717cb1ad32ff647170 SHA1 e10f493a9712e77feb78aa6f8bc6c0d6cd330eaf SHA256 9b8d5ffcf9e20e98311d2ddb15a314eea9920e9d5ecc13fa7cbd1c413542f52e
+MD5 2e6537810230a7531a639acbade977a6 ChangeLog 3411
+RMD160 b0b32f75acf924cbf23d64717cb1ad32ff647170 ChangeLog 3411
+SHA256 9b8d5ffcf9e20e98311d2ddb15a314eea9920e9d5ecc13fa7cbd1c413542f52e ChangeLog 3411
MISC metadata.xml 157 RMD160 d7470fe88d1b96f3a7f1ef26fb7dc646b4a1b907 SHA1 7eae91f2588bdae8667d37a98fb3090d539eeca1 SHA256 44350daa7594842894d676413708d8ea77ccb0017bed24711af5b256281f5e61
MD5 c390804e060ffd11a5bbb143434b2b2d metadata.xml 157
RMD160 d7470fe88d1b96f3a7f1ef26fb7dc646b4a1b907 metadata.xml 157
@@ -14,3 +22,6 @@ SHA256 44350daa7594842894d676413708d8ea77ccb0017bed24711af5b256281f5e61 metadata
MD5 74e9028d343ebeba2b70ba51d274d7a5 files/digest-thunar-0.8.0-r1 244
RMD160 bd56683dc3e760f2695e8074cc355370154722d7 files/digest-thunar-0.8.0-r1 244
SHA256 002305cb4a3dcc120b84a79088f3fb013fcd2cf5262fa6e5c1fb80a40d1583f2 files/digest-thunar-0.8.0-r1 244
+MD5 74e9028d343ebeba2b70ba51d274d7a5 files/digest-thunar-0.8.0-r2 244
+RMD160 bd56683dc3e760f2695e8074cc355370154722d7 files/digest-thunar-0.8.0-r2 244
+SHA256 002305cb4a3dcc120b84a79088f3fb013fcd2cf5262fa6e5c1fb80a40d1583f2 files/digest-thunar-0.8.0-r2 244
diff --git a/xfce-base/thunar/files/digest-thunar-0.8.0-r2 b/xfce-base/thunar/files/digest-thunar-0.8.0-r2
new file mode 100644
index 000000000000..36154971d4f9
--- /dev/null
+++ b/xfce-base/thunar/files/digest-thunar-0.8.0-r2
@@ -0,0 +1,3 @@
+MD5 9f7b0945d6a235391049f6818fb4d188 Thunar-0.8.0.tar.bz2 6205993
+RMD160 95d29cca64c102b7d8bdcc0592f6fcab7198148b Thunar-0.8.0.tar.bz2 6205993
+SHA256 460484f8397a0e0e4115d1629d2ae027b5052dc2c564d4a4629a3557e4a055f9 Thunar-0.8.0.tar.bz2 6205993
diff --git a/xfce-base/thunar/files/thunar-0.8.0-jpeg.patch b/xfce-base/thunar/files/thunar-0.8.0-jpeg.patch
new file mode 100644
index 000000000000..5c9b28f61565
--- /dev/null
+++ b/xfce-base/thunar/files/thunar-0.8.0-jpeg.patch
@@ -0,0 +1,168 @@
+diff -ur Thunar-0.8.0.orig/thunar-vfs/thunar-vfs-thumb-jpeg.c Thunar-0.8.0/thunar-vfs/thunar-vfs-thumb-jpeg.c
+--- Thunar-0.8.0.orig/thunar-vfs/thunar-vfs-thumb-jpeg.c 2007-01-20 22:39:09.000000000 +0200
++++ Thunar-0.8.0/thunar-vfs/thunar-vfs-thumb-jpeg.c 2007-02-12 20:16:29.000000000 +0200
+@@ -1,4 +1,4 @@
+-/* $Id: thunar-0.8.0-jpeg.patch,v 1.1 2007/02/12 19:14:05 drac Exp $ */
++/* $Id: thunar-0.8.0-jpeg.patch,v 1.1 2007/02/12 19:14:05 drac Exp $ */
+ /*-
+ * Copyright (c) 2005-2007 Benedikt Meurer <benny@xfce.org>
+ *
+@@ -310,18 +310,18 @@
+ {
+ struct /* thumbnail JPEG */
+ {
+- guint thumb_jpeg_length;
+- guint thumb_jpeg_offset;
+- };
++ guint length;
++ guint offset;
++ } thumb_jpeg;
+ struct /* thumbnail TIFF */
+ {
+- guint thumb_tiff_length;
+- guint thumb_tiff_offset;
+- guint thumb_tiff_interp;
+- guint thumb_tiff_height;
+- guint thumb_tiff_width;
+- };
+- };
++ guint length;
++ guint offset;
++ guint interp;
++ guint height;
++ guint width;
++ } thumb_tiff;
++ } thumb;
+
+ gboolean big_endian;
+ } TvtjExif;
+@@ -330,24 +330,24 @@
+
+ static guint
+ tvtj_exif_get_ushort (const TvtjExif *exif,
+- gconstpointer data)
++ const guchar *data)
+ {
+ if (G_UNLIKELY (exif->big_endian))
+- return GUINT16_FROM_BE (*((const guint16 *) data));
++ return ((data[0] << 8) | data[1]);
+ else
+- return GUINT16_FROM_LE (*((const guint16 *) data));
++ return ((data[1] << 8) | data[0]);
+ }
+
+
+
+ static guint
+ tvtj_exif_get_ulong (const TvtjExif *exif,
+- gconstpointer data)
++ const guchar *data)
+ {
+ if (G_UNLIKELY (exif->big_endian))
+- return GUINT32_FROM_BE (*((const guint32 *) data));
++ return ((data[0] << 24) | (data[1] << 16) | (data[2] << 8) | data[3]);
+ else
+- return GUINT32_FROM_LE (*((const guint32 *) data));
++ return ((data[3] << 24) | (data[2] << 16) | (data[1] << 8) | data[0]);
+ }
+
+
+@@ -415,15 +415,15 @@
+
+ /* and remember it appropriately */
+ if (tag == 0x0100)
+- exif->thumb_tiff_width = value;
++ exif->thumb.thumb_tiff.width = value;
+ else if (tag == 0x0100)
+- exif->thumb_tiff_height = value;
++ exif->thumb.thumb_tiff.height = value;
+ else if (tag == 0x0106)
+- exif->thumb_tiff_interp = value;
++ exif->thumb.thumb_tiff.interp = value;
+ else if (tag == 0x0111)
+- exif->thumb_tiff_offset = value;
++ exif->thumb.thumb_tiff.offset = value;
+ else
+- exif->thumb_tiff_length = value;
++ exif->thumb.thumb_tiff.length = value;
+ }
+ else if (tag == 0x0201 || tag == 0x0202)
+ {
+@@ -435,9 +435,9 @@
+
+ /* and remember it appropriately */
+ if (G_LIKELY (tag == 0x201))
+- exif->thumb_jpeg_offset = value;
++ exif->thumb.thumb_jpeg.offset = value;
+ else
+- exif->thumb_jpeg_length = value;
++ exif->thumb.thumb_jpeg.length = value;
+ }
+ }
+ }
+@@ -503,25 +503,25 @@
+ if (G_LIKELY (exif.thumb_compression == 6)) /* JPEG */
+ {
+ /* check if we have a valid thumbnail JPEG */
+- if (exif.thumb_jpeg_offset > 0 && exif.thumb_jpeg_length > 0
+- && exif.thumb_jpeg_offset + exif.thumb_jpeg_length <= length)
++ if (exif.thumb.thumb_jpeg.offset > 0 && exif.thumb.thumb_jpeg.length > 0
++ && exif.thumb.thumb_jpeg.offset + exif.thumb.thumb_jpeg.length <= length)
+ {
+ /* try to load the embedded thumbnail JPEG */
+- return tvtj_jpeg_load (data + exif.thumb_jpeg_offset, exif.thumb_jpeg_length, size);
++ return tvtj_jpeg_load (data + exif.thumb.thumb_jpeg.offset, exif.thumb.thumb_jpeg.length, size);
+ }
+ }
+ else if (exif.thumb_compression == 1) /* Uncompressed */
+ {
+ /* check if we have a valid thumbnail (current only RGB interpretations) */
+- if (G_LIKELY (exif.thumb_tiff_interp == 2)
+- && exif.thumb_tiff_offset > 0 && exif.thumb_tiff_length > 0
+- && exif.thumb_tiff_offset + exif.thumb_tiff_length <= length
+- && exif.thumb_tiff_height * exif.thumb_tiff_width == exif.thumb_tiff_length)
++ if (G_LIKELY (exif.thumb.thumb_tiff.interp == 2)
++ && exif.thumb.thumb_tiff.offset > 0 && exif.thumb.thumb_tiff.length > 0
++ && exif.thumb.thumb_tiff.offset + exif.thumb.thumb_tiff.length <= length
++ && exif.thumb.thumb_tiff.height * exif.thumb.thumb_tiff.width == exif.thumb.thumb_tiff.length)
+ {
+ /* plain RGB data, just what we need for a GdkPixbuf */
+- return gdk_pixbuf_new_from_data (g_memdup (data + exif.thumb_tiff_offset, exif.thumb_tiff_length),
+- GDK_COLORSPACE_RGB, FALSE, 8, exif.thumb_tiff_width,
+- exif.thumb_tiff_height, exif.thumb_tiff_width,
++ return gdk_pixbuf_new_from_data (g_memdup (data + exif.thumb.thumb_tiff.offset, exif.thumb.thumb_tiff.length),
++ GDK_COLORSPACE_RGB, FALSE, 8, exif.thumb.thumb_tiff.width,
++ exif.thumb.thumb_tiff.height, exif.thumb.thumb_tiff.width,
+ (GdkPixbufDestroyNotify) g_free, NULL);
+ }
+ }
+@@ -615,7 +615,7 @@
+ if (G_LIKELY (fstat (fd, &statb) == 0 && statb.st_size > 0))
+ {
+ /* try to mmap the file */
+- content = mmap (NULL, statb.st_size, PROT_READ, MAP_SHARED, fd, 0);
++ content = (JOCTET *) mmap (NULL, statb.st_size, PROT_READ, MAP_SHARED, fd, 0);
+
+ /* verify that the mmap was successful */
+ if (G_LIKELY (content != (JOCTET *) MAP_FAILED))
+@@ -630,7 +630,7 @@
+ }
+
+ /* unmap the file content */
+- munmap (content, statb.st_size);
++ munmap ((void *) content, statb.st_size);
+ }
+
+ /* close the file */
+@@ -638,9 +638,9 @@
+ }
+
+ return pixbuf;
+-#endif
+-
++#else
+ return NULL;
++#endif
+ }
+
+
diff --git a/xfce-base/thunar/thunar-0.8.0-r2.ebuild b/xfce-base/thunar/thunar-0.8.0-r2.ebuild
new file mode 100644
index 000000000000..8c70fb94f444
--- /dev/null
+++ b/xfce-base/thunar/thunar-0.8.0-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/xfce-base/thunar/thunar-0.8.0-r2.ebuild,v 1.1 2007/02/12 19:14:05 drac Exp $
+
+inherit eutils xfce44
+
+MY_P="${P/t/T}"
+S="${WORKDIR}/${MY_P}"
+
+xfce44
+
+DESCRIPTION="File manager"
+HOMEPAGE="http://thunar.xfce.org"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc dbus debug exif gnome hal plugins pcre startup-notification"
+
+RDEPEND=">=dev-lang/perl-5.6
+ x11-libs/libSM
+ >=x11-libs/gtk+-2.6
+ >=dev-libs/glib-2.6
+ >=xfce-extra/exo-0.3.2
+ >=x11-misc/shared-mime-info-0.15
+ >=dev-util/desktop-file-utils-0.10
+ >=xfce-base/libxfce4util-${XFCE_MASTER_VERSION}
+ virtual/fam
+ dbus? ( || ( dev-libs/dbus-glib <sys-apps/dbus-1 ) )
+ hal? ( sys-apps/hal )
+ >=media-libs/freetype-2
+ gnome? ( gnome-base/gconf )
+ exif? ( >=media-libs/libexif-0.6 )
+ >=media-libs/jpeg-6b
+ startup-notification? ( x11-libs/startup-notification )
+ pcre? ( >=dev-libs/libpcre-6 )
+ plugins? ( dbus? ( >=xfce-base/xfce4-panel-${XFCE_MASTER_VERSION} ) )
+ gnome-base/librsvg"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ dev-util/intltool
+ doc? ( dev-util/gtk-doc )"
+
+XFCE_CONFIG="${XFCE_CONFIG} $(use_enable exif) $(use_enable gnome gnome-thumbnailers) \
+ $(use_enable dbus) $(use_enable pcre)"
+
+pkg_setup() {
+ if use hal; then
+ XFCE_CONFIG="${XFCE_CONFIG} --with-volume-manager=hal"
+ else
+ XFCE_CONFIG="${XFCE_CONFIG} --with-volume-manager=none"
+ fi
+
+ if use plugins && ! use dbus ; then
+ XFCE_CONFIG="${XFCE_CONFIG} --disable-tpa-plugin"
+ ewarn "Plugins requires ${PN} with dbus support. Enable dbus use flag"
+ ewarn "and re-emerge this ebuild if you want this feature."
+ epause 3
+ fi
+
+ if use hal && ! use dbus ; then
+ ewarn "HAL requires ${PN} with dbus support. Enable dbus use flag"
+ ewarn "and re-emerge this ebuild if you want this feature."
+ die "re-emerge with USE dbus"
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-jpeg.patch"
+}
+
+DOCS="AUTHORS ChangeLog HACKING FAQ THANKS TODO README NEWS"
+
+xfce44_extra_package