Add patch to fix a braino which leads to crash in GIMP when opening

JPEG pictures with certain EXIF data, like those from SONY, Nikon
or Canon digital cameras.

Obtained from libexif CVS, exif-data.c, rev. 1.68, via FreeBSD.
Noted by Leonard Schmidt on tech-pkg.
This commit is contained in:
dillo 2005-07-24 00:06:44 +00:00
parent 50edd71b90
commit a8f3faeecc
4 changed files with 17 additions and 5 deletions

View file

@ -1,7 +1,7 @@
# $NetBSD: Makefile,v 1.25 2005/05/13 11:57:59 salo Exp $
# $NetBSD: Makefile,v 1.26 2005/07/24 00:06:44 dillo Exp $
DISTNAME= libexif-0.6.12
PKGREVISION= 1
PKGREVISION= 2
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=libexif/}
EXTRACT_SUFX= .tar.bz2

View file

@ -1,4 +1,4 @@
# $NetBSD: buildlink3.mk,v 1.7 2005/05/13 11:57:59 salo Exp $
# $NetBSD: buildlink3.mk,v 1.8 2005/07/24 00:06:44 dillo Exp $
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
LIBEXIF_BUILDLINK3_MK:= ${LIBEXIF_BUILDLINK3_MK}+
@ -12,7 +12,7 @@ BUILDLINK_PACKAGES+= libexif
.if !empty(LIBEXIF_BUILDLINK3_MK:M+)
BUILDLINK_DEPENDS.libexif+= libexif>=0.6.11
BUILDLINK_RECOMMENDED.libexif+= libexif>=0.6.12nb1
BUILDLINK_RECOMMENDED.libexif+= libexif>=0.6.12nb2
BUILDLINK_PKGSRCDIR.libexif?= ../../graphics/libexif
.endif # LIBEXIF_BUILDLINK3_MK

View file

@ -1,4 +1,4 @@
$NetBSD: distinfo,v 1.16 2005/05/27 14:20:36 jschauma Exp $
$NetBSD: distinfo,v 1.17 2005/07/24 00:06:44 dillo Exp $
SHA1 (libexif-0.6.12.tar.bz2) = 5d2c5976521e179d41ff8908b678b14f2e8e690b
RMD160 (libexif-0.6.12.tar.bz2) = 24cfdb7663f0566f2907987e5dbc472c21b583d9
@ -6,3 +6,4 @@ Size (libexif-0.6.12.tar.bz2) = 378650 bytes
SHA1 (patch-aa) = e32ab9cad1720f0b4d6178240e78193a97c4c876
SHA1 (patch-ab) = 973ca09fc059d74e3221bba12e6e8f4630db20bb
SHA1 (patch-ac) = 0aa196539b3e272487dd85a4cccf0f1b7761d132
SHA1 (patch-ad) = d5402a6c6913d3b5ba2c93142928ae029ed19046

View file

@ -0,0 +1,11 @@
--- libexif/exif-data.c.orig Sun Mar 13 03:27:13 2005
+++ libexif/exif-data.c Wed Apr 13 22:42:35 2005
@@ -231,7 +231,7 @@
* the offset must be an even number. If we need to introduce
* a padding byte, we set it to 0.
*/
- if (s & 1) *ds++;
+ if (s & 1) (*ds)++;
*d = exif_mem_realloc (data->priv->mem, *d, *ds);
if (!*d) {
EXIF_LOG_NO_MEMORY (data->priv->log, "ExifData", *ds);