From: Lutz M. <lu...@us...> - 2007-12-16 16:59:36
|
Update of /cvsroot/libexif/libexif/libexif In directory sc8-pr-cvs6.sourceforge.net:/tmp/cvs-serv29751/libexif Modified Files: .cvsignore exif-data.c Log Message: 2007-12-16 Lutz Mueller <lu...@us...> Marcus Meissner <ma...@je...> pointed out the following: * libexif/exif-data.c: (exif_data_load_data_thumbnail) ExifLong is unsigned. Therefore no need to check for negative values. Check for sane offset instead. Index: .cvsignore =================================================================== RCS file: /cvsroot/libexif/libexif/libexif/.cvsignore,v retrieving revision 1.3 retrieving revision 1.4 diff -u -p -d -r1.3 -r1.4 --- .cvsignore 13 Mar 2005 02:15:51 -0000 1.3 +++ .cvsignore 16 Dec 2007 16:59:30 -0000 1.4 @@ -5,5 +5,6 @@ Makefile.in libexif.la *.o *.lo +*.la libexif.pc _stdint.h Index: exif-data.c =================================================================== RCS file: /cvsroot/libexif/libexif/libexif/exif-data.c,v retrieving revision 1.104 retrieving revision 1.105 diff -u -p -d -r1.104 -r1.105 --- exif-data.c 15 Dec 2007 07:56:34 -0000 1.104 +++ exif-data.c 16 Dec 2007 16:59:30 -0000 1.105 @@ -299,9 +299,10 @@ static void exif_data_load_data_thumbnail (ExifData *data, const unsigned char *d, unsigned int ds, ExifLong offset, ExifLong size) { - if ((ds < offset + size) || (size <= 0) || (offset <= 0)) { + if ((ds < offset + size) || (offset > ds)) { exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", - "Bogus thumbnail offset and size."); + "Bogus thumbnail offset (%u) or size (%u).", + offset, size); return; } if (data->data) |