Date: Fri, 28 Aug 2009 20:34:28 +0300 (EEST) From: Andriy Gapon <avg@icyb.net.ua> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/138272: graphics/exiv2: add patch from upstream Message-ID: <200908281734.n7SHYSEg091562@odyssey.starpoint.kiev.ua> Resent-Message-ID: <200908281750.n7SHo5UJ048049@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 138272 >Category: ports >Synopsis: graphics/exiv2: add patch from upstream >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Fri Aug 28 17:50:03 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Andriy Gapon >Release: FreeBSD 7.2-STABLE amd64 >Organization: >Environment: exiv2-0.18,1 >Description: I am getting the following crash when I try to import a certain image with digikam: #6 0x000000080687a55c in thr_kill () from /lib/libc.so.7 #7 0x0000000806901233 in abort () from /lib/libc.so.7 #8 0x00000008068ea119 in __assert () from /lib/libc.so.7 #9 0x000000080253af0a in Exiv2::Internal::TiffMnEntry::doCount () from /usr/local/lib/libexiv2.so.7 #10 0x000000080253b355 in Exiv2::Internal::TiffDirectory::writeDirEntry () from /usr/local/lib/libexiv2.so.7 #11 0x000000080253e4ff in Exiv2::Internal::TiffDirectory::doWrite () from /usr/local/lib/libexiv2.so.7 #12 0x000000080253c16b in Exiv2::Internal::TiffSubIfd::doWriteData () from /usr/local/lib/libexiv2.so.7 #13 0x000000080253b4bb in Exiv2::Internal::TiffDirectory::doWriteData () from /usr/local/lib/libexiv2.so.7 #14 0x000000080253e6a0 in Exiv2::Internal::TiffDirectory::doWrite () from /usr/local/lib/libexiv2.so.7 #15 0x0000000802542d9e in Exiv2::Internal::TiffParserWorker::encode () from /usr/local/lib/libexiv2.so.7 #16 0x0000000802542ef1 in Exiv2::TiffParser::encode () from /usr/local/lib/libexiv2.so.7 #17 0x00000008024e4382 in Exiv2::ExifParser::encode () from /usr/local/lib/libexiv2.so.7 #18 0x0000000802326b9e in KExiv2Iface::KExiv2::getExif () from /usr/local/lib/libkexiv2.so.5 #19 0x0000000800a78e17 in Digikam::ImagePropertiesSideBarCamGui::itemChanged () from /usr/local/lib/libdigikam.so.0 The image was taken with a Nokia phone camera and contains some non-empty Exif.Photo.MakerNote (type Ascii, size 1088). I believe that this issue was fixed upstream: http://dev.exiv2.org/repositories/revision/exiv2/1743 http://dev.exiv2.org/issues/show/615 I applied this change in my local ports tree and it seems to fix the problem. I also see that Debian folks have included this change into their package of exiv2. Could we please do the same? >How-To-Repeat: Try to import into digikam a suitable image (photo) with non-empty Exif.Photo.MakerNote that has any type other than 'undefined'. >Fix: Please add the following patch obtained from upstream to files/. --- patch-tiffcomposite.cpp begins here --- Index: tiffcomposite.cpp =================================================================== --- src/tiffcomposite.cpp (revision 1742) +++ src/tiffcomposite.cpp (revision 1743) @@ -688,9 +688,13 @@ uint32_t TiffMnEntry::doCount() const { - // Count of tag Exif.Photo.MakerNote is the size of the Makernote in bytes + if (!mn_) { + return TiffEntryBase::doCount(); + } + // Count of IFD makernote in tag Exif.Photo.MakerNote is the size of the + // Makernote in bytes assert(tiffType() == ttUndefined); - return size(); + return mn_->size(); } uint32_t TiffArrayEntry::doCount() const --- patch-tiffcomposite.cpp ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200908281734.n7SHYSEg091562>