Changes from version 0.26 to 0.27
---------------------------------

https://github.com/Exiv2/exiv2/milestone/1

88 issues have been closed on Redmine

* Build: (11)
	- 0001362:	Fix Clang build
				(David Carlos Manuelda)
	- 0001358:	Unsuccessful build (Win7, MSVC2015, amd64_x86)
				(Andreas Martin)
	- 0001356:	Small patch to configure.py
				(Sridhar Boovaraghavan)
	- 0001329:	Error during cmake with gcc version parsing
				(Maxime Daisy)
	- 0001310:	Provide support for msys/2.0
	- 0001299:	exiv2-0.26-trunk.tar.gz changed on download server
				(Jonathan Riddell)
	- 0001270:	Using libexiv2.a/.lib  in multhreaded app segfaults.
				(Ben Touchette)
	- 0001237:	Report CMake/MinGW issues to Kitware
	- 0001188:	Provide build support for C++11
	- 0001174:	Visual Studio Support Enhancements
	- 0001121:	Visual Studio support for v0.27

* Basicio: (1)
	- 0001374:	excessively often calls stat()
				(Johannes Berg)

* Coverity: (11)
	- 0001265:	[ Coverity : /src/basicio.cpp ] Unchecked return value from library , Time of check time of use , Incorrect deallocator used , Dereference before null check , String not null terminated
				(Mahesh Hegde)
	- 0001264:	[ Coverity : /src/actions.cpp ] Unchecked return value from library , Logically dead code , Not restoring ostream format
				(Mahesh Hegde)
	- 0001263:	[ Coverity : 1396730 Uninitialized scalar field ] /include/exiv2/xmp.hpp
				(Mahesh Hegde)
	- 0001262:	[ Coverity : XMPSDK Errors ] Unused value , Explicit null dereferenced
				(Mahesh Hegde)
	- 0001261:	[ Coverity : 1296083 Resource leak ] /src/exiv2.cpp
				(Mahesh Hegde)
	- 0001260:	[ Coverity : 1296084 Resource leak ] /src/http.cpp
				(Mahesh Hegde)
	- 0001259:	[ Coverity : 1396717 Out-of-bounds read ] /src/easyaccess.cpp
				(Mahesh Hegde)
	- 0001258:	[ Coverity 1396718 Out-of-bounds access ] /src/webpimage.cpp
				(Mahesh Hegde)
	- 0001257:	[ Coverity 1396719 Resource leak ] /src/tiffcomposite.cpp
				(Mahesh Hegde)
	- 0001256:	[ Coverity 1396721 : /src/basicio.cpp ]  String not null terminated
				(Mahesh Hegde)
	- 0000883:	Use Coverity SCAN on exiv2 code-base
				(Mahesh Hegde)

* Camera: (1)
	- 0001352:	Support camera Canon M100
				(Daniel Zucchetto)

* Duplicate: (1)
	- 0001307:	exiv2: tiffvisitor.cpp:1299: virtual void Exiv2::Internal::TiffReader::visitDirectory(Exiv2::Internal::TiffDirectory*): Assertion `tc.get()' failed.
				(Henri Salo)

* Exif: (6)
	- 0001320:	It is a heap-buffer-overflow in Exiv2::Jp2Image::readMetadata (jp2image.cpp:277)
				(Zhu Liu)
	- 0001319:	It is a heap-buffer-overflow in Exiv2::us2Data (types.cpp:346)
				(Zhu Liu)
	- 0001318:	Invalid memory address dereference in Exiv2::StringValueBase::read ( in value.cpp:302)
				(Zhu Liu)
	- 0001317:	It is a heap-buffer-overflow in Exiv2::s2Data (types.cpp:383)
				(Zhu Liu)
	- 0001316:	It is a heap-buffer-overflow in Exiv2::l2Data (types.cpp:398)
				(Zhu Liu)
	- 0001315:	Invalid memory address dereference in Exiv2::DataValue::read (value.cpp:193)
				(Zhu Liu)

* Insufficient information: (1)
	- 0001347:	Segfault in Digikam when saving/loading certain TIFF images
				(V Engmark)

* Image format: (5)
	- 0001353:	Segmentation fault in the software exiv2 when the function Exiv2::tEXtToDataBuf() is finished
				(chung-yi lin)
	- 0001346:	Assertion failure in Exiv2::Internal::CiffComponent::doRead() in libexiv2
				(Sanjay Rawat)
	- 0001345:	Assertion Failure (SIGABRT) in Exiv2:RafImage::readMetadata() in Libexiv2
				(Sanjay Rawat)
	- 0001338:	Exiv2 aborted (crashed) with "Error in `exiv2': free(): invalid next size (fast)"
				(Sanjay Rawat)
	- 0001334:	Version 0.26 is returns unwanted data when the key value is received from RW2 files (Panasonic DMC-GF6 camera)
				(Alex Stepanov)

* Lens: (20)
	- 0001373:	Tamron SP 24-70mm F/2.8 Di VC USD not recognized properly
				(Achim Kilchert)
	- 0001372:	The lens "Tamron AF 18-200mm F3.5-6.3 XR Di II"  is wrongly identified.
				(Julian Hofer)
	- 0001370:	Add entry for new(ish) lens - Tamron 10-24mm F/3.5-4.5 Di II VC HLD (B023)
				(Robert Sleator)
	- 0001366:	Feature Request Sigma 85mm f/1.4 DG Art Series
				(Christian Fandel)
	- 0001365:	Feature Request fr Sigma 135mm f/1.8 DG Art Series
				(Christian Fandel)
	- 0001361:	Wrongly identified Canon 2x extender as 1.4x extender with Tamron lens
				(Simon Harhues)
	- 0001355:	New lens Tamron 100-400mm F/4.5-6.3 Di VC USD
				(Christian Touzé)
	- 0001351:	Add lens: Sigma 120-300mm f/2.8 G VR
				(Nikolai Försterling)
	- 0001348:	patch: add Tamron SP AF 150-600mm F/5-6.3 VC USD G2 (A022) for Nikon
				(Mike Romanov)
	- 0001339:	Panasonic DMC-TZ70 lens not detected
				(Tim Stahel)
	- 0001336:	Support for AF-P DX NIKKOR 10-20mm f/4.5-5.6G VR
				(Šarūnas Burdulis)
	- 0001335:	Missing Nikon lense
				(Niels Hansen)
	- 0001333:	New Lens: Tamron SP 24-70mm F/2.8 Di VC USD G2 (A032)
				(LP Tech)
	- 0001332:	Recognise Tamron 18-200mm F/3.5-6.3 DiII VC B018 on Canon bodies
				(Šarūnas Burdulis)
	- 0001328:	Sigma 18-300mm is wrongly reported as a Canon 75-300mm
				(Jean-Luc Jean-Luc Coulon)
	- 0001327:	Two Sigma 24-70mm f/2.8 IF EX DG HSM lens definitions ??
				(Philippe Dussart-Desart)
	- 0001326:	Tamron 100-300mm f/5-6.3 MACRO 1:4
				(Albert Jasinski)
	- 0001323:	Add lens "Sigma 18-300mm f/3.5-6.3 DC Macro OS HS" for Canon ID 197
				(Ronny Heidenreich)
	- 0001306:	the lens TAMRON SP 15-30mm F/2.8 Di VC USD A012 is not properly recognised
				(rene ernenwein)
	- 0001304:	Lens missing Tamron SP 90mm f/2.8 Di Macro 1:1 VC USD F017
				(Matze G)

* Miscellaneous: (2)
	- 0001314:	it is a stack-overflow vulnerability in Exiv2::Internal::stringFormat[abi:cxx11] ( in image.cpp:975 )
				(Zhu Liu)
	- 0001305:	Segmentation fault on certain image
				(Oleg Antonyan)

* Makernote: (2)
	- 0001343:	Irix 15mm f/2.4 on Nikon
				(Ben Perston)
	- 0001324:	Pentax Makernote written twice
				(Dominique Nerriec)

* Metadata: (7)
	- 0001341:	Date/Time Original not modified for NEFs
				(Jean-Luc CECCOLI)
	- 0001340:	Infinite loop bugs in Libexiv2 Exiv2::Image::printIFDStructure()
				(Sanjay Rawat)
	- 0001325:	Crash in exiv2  - Nikon1MakerNote::printBarValue (nikonnm.cpp)
				(Thibaud Mouton)
	- 0001322:	Exception in PentaxMakerNote::printShutterCount, source: pentaxmn.cpp
				(Norbert Wagner)
	- 0001321:	Invalid memory address dereference in Exiv2::getULong(types.cpp:246)
				(Zhu Liu)
	- 0001301:	New lens: Sigma 18-35mm f/1.8 DC HSM Art for Canon
				(Alexander Steffen)
	- 0001300:	New lens: Canon EF-S 35mm f/2.8 Macro IS STM
				(Alexander Steffen)

* Not-a-bug: (8)
	- 0001369:	New lens Yongnuo 50mm f/1.8 II for Canon
				(Michal Fapso)
	- 0001368:	Canon EF-M 15-45 broken LensType
				(Peter Wemmert)
	- 0001367:	New Lens Sigma 100-400 mm, F5-6.3 DG for Nikon
				(Thomas G)
	- 0001364:	New lens Tamron SP 24-70mm F/2.8 Di VC USD G2
				(Mikko Pantsar)
	- 0001350:	Add lens: AF-S DX Nikkor 18-140mm
				(Nikolai Försterling)
	- 0001349:	Add lens: Sigma 50-100mm F1.8 DC HSM | A
				(Nikolai Försterling)
	- 0001344:	Unknown metadata
				(luv zeng)
	- 0001331:	exiv2 fails to delete bulk of metadata in jpeg
				(Denis-Carl Robidoux)

* Tools: (1)
	- 0001303:	#1 Use 'releases' feature on GitHub

* Tiff parser: (3)
	- 0001360:	exiv2 can't read metadata from tiff file (tiff directory length is too large)
				(T Modes)
	- 0001359:	This does not look like a TIFF image
				(jaeho jung)
	- 0001330:	Crash in Exiv2::TiffImage::readMetadata
				(Tobias E.)

* Video: (2)
	- 0001068:	Video Code Umbrella
	- 0001028:	Add GSoC13 video-write code

* Website: (3)
	- 0001308:	Move directory /website to svn://dev.exiv2.org/svn/team/website
	- 0001302:	Use sha256 Checksums on Downloads and Archive pages of the web site.
	- 0001288:	site defaults to http://, and https:// certificate is bogus
				(Matthias Andree)

* Xmp: (3)
	- 0001354:	Inconsistency with long XMP namespaces (e.g. 'Iptc4xmpExt')
				(Jens Georg)
	- 0001278:	XMP SDK Split
				(Ben Touchette)
	- 0000941:	Upgrade xmpsdk source to Adobe's current version



  Changes from version 0.25 to 0.26 --------------------------------- * Api: (4) - 0001275: Exiv2 0.26-svn issue with ExifTags class MPF tags UPSTREAM (Wil Cowb) - 0001240: Review API changes from v0.25 to v0.26 (Andreas Huggel) - 0001157: Out of memory error with user defined to_string template - 0001120: Deprecating outdated and/or undesired API's (Alan Pater / Andreas Huggel) * Basicio: (9) - 0001272: Possible issue with temp files being left behind. (Ben Touchette) - 0001183: Guidance about serialising metadata using MemIo and ExvImage Classes - 0001151: Small raw images size (Wil Hermes) - 0001147: writeMetadata overwrites files without the +w bit (Dan Fandrich) - 0001113: Crash in Exiv2 0.25 (Harry McKame) - 0001100: Unable to extract preview for a remote image - 0001098: digikam suddenly stops searching for new entries (Andy Burger / Alan Pater) - 0001077: MemIo calls msync but FileIo does not (Thomas Beutlich / Andreas Huggel) - 0000747: Direct FILE* access from FileIo interface (Adam Hooper) * Build: (36) - 0001293: MacOS-X CMake/autotools incompatibility handling of -compatibility_version - 0001292: Fix targeting Windows XP (regression) (Dimitri Schoolwerth) - 0001291: MSVC: Public header pulls ins unnecessary headers and libraries (T Modes) - 0001273: exiv2 0.25 fails to compile correctly on musl libc due to improper check of strerror_r return type (A. Wilcox) - 0001269: Enable using dynamic runtime libs with when disabling shared libs for Windows (Ben Touchette) - 0001268: Building for debug in windows causes heap corruption error. (Ben Touchette) - 0001266: CMake fails to link zlib with debug config using msvc 2015. (Ben Touchette) - 0001250: Eliminate Visual Studio project convertor errors - 0001249: Support GCC/G++ v6.2.0 - 0001236: Build Exiv2 on MinGW using CMake - 0001226: Deprecate msvc2003 with v0.26 - 0001213: Using $(SolutionDir)../ as the prefix for include directories interfere with using projects in external solutions (Sridhar Boovaraghavan) - 0001210: C++11 compile fails "error: use of deleted function bool std::regex_search" (Zulan Zulan) - 0001192: Only link with libdl on gnu/linux (Matthieu Volat) - 0001173: Shared library on Mac OS X has incorrect name (Ilya Kulakov) - 0001171: localtime.c causes problems in MSVC 2015 & is not needed - 0001169: Validate flag EXV_UNICODE_PATH/msvc2005 builds and passes the test suite - 0001159: fff.h:33:2: error: 'BYTE' does not name a type (Jakub Wilk) - 0001150: Unable to build for Mac OSX 10.6 (Max Pozdeev) - 0001132: New warnings from basicio.cpp from Xcode 7.1/clang-700.1.76 - 0001127: exiv2 --verbose --version --grep libz incorrectly reports have_libz=0 - 0001125: CMake: does not support overriding/selecting correct libdir (lib64) (Michał Górny) - 0001123: libexiv2 should hide XMP-SDK symbols - 0001119: libxmp missing from the install folder when building statically libexiv2 (Emmanuel d'Angelo) - 0001110: Provide Xcode Build Environment - 0001109: User ability to request a build from Jenkins - 0001103: exiv2.hpp:55:24: fatal error: pngimage.hpp: No such file or directory (Jakub Wilk) - 0001102: install: cannot stat '../bin/.libs/exiv2.exe': No such file or directory (Jakub Wilk) - 0001101: i686-w64-mingw32-g++: error: localtime.o: No such file or directory (Jakub Wilk) - 0001099: mv: cannot stat 't-bs.gmo': No such file or directory (Jakub Wilk) - 0001041: CMake toolchain for windows (Daniel Kaneider) - 0001031: CMake build broken when using zlib/expat in clean way (Daniel Kaneider) - 0000851: Please support std::wstring in exiv2 path access (Philipp Simmler) - 0000733: Improve compile-time control over size and functionality of the library (Andreas Huggel) - 0000710: Problems Compiling Exiv2 Under SGI IRIX (Brent L. Bates) - 0000536: Switch to a unified build system based on cmake (Nikolai Saoukh) * Coverity: (1) - 0000971: Coverity scan : Not restoring ostream format (STREAM_FORMAT_STATE) CID : 982002 through 982054 (53 similar defects) (Mahesh Hegde) * Duplicate: (3) - 0001239: exiv2 0.25 crashes with casio ex-z50 files (Rainer Kliese) - 0001235: ./configure doesn't exists.. in last version of Exiv2. (Rodrigo Barbano) - 0001181: Casio.jpg exports crash darktable - suse leap 42.1 (Anonymous) * Documentation: (2) - 0001209: Build instructions in README (Thomas Beutlich) - 0001136: exiv2 -ps (default) output does not respect the -g (--grep) option * Design: (4) - 0001137: Enable piping of selective copy of metadata between images - 0001034: Camera accessory overflow file (Tobias Jakobs) - 0000917: Modify exiv2/actions.cpp return -3/253 when no metadata has been found. (Andreas Huggel) - 0000481: Incorporate information from ExifTool (Stefan Bruens / Niels Kristian Bech Jensen) * Exif: (7) - 0001242: jp2 metadata: Unrecognized UUID EXIF box (Herbert Kauer) - 0001214: Human readable GPS values could be bad (Ondřej Tůma) - 0001089: single 0-byte exif comment leads to SIGABRT (134) (Felix Bolte) - 0000935: Different values for some metadata with exiftool (Jehan Pagès / Andreas Huggel) - 0000825: Panasonic Manometer Tag (Christoph Anton Mitterer / Ben Touchette) - 0000613: TiffImage does not honor the writeXmpFromPacket flag (Andreas Huggel) - 0000492: Color temperature information from RAW files... (Bastardo -) * Image format: (12) - 0001289: Infinite loop on command exiv2 -pR on a .CR2 file (Ben Touchette) - 0001277: Crash with Canon CR2 file (Ben Touchette) - 0001271: Update printStructure (Ben Touchette) - 0001247: out of bounds read access in Exiv2::Image::setIccProfile (Hanno Böck) - 0001243: Improved JPEG 2000 Support - 0001234: Class pgfimage does not work on big endian hardware. - 0001211: Support Development of WebP - 0001199: WebP file support (Ben Touchette) - 0001178: Olympus E-M5 Mark II raw file not recognized (Terence Tay) - 0001143: Unable to extract embedded preview from jpg for Sony a77 (Michael Waldor) - 0000889: CRW: crashes when passed invalid data (Alyssa Milburn) - 0000548: recognize pdf as image format (mikolaj -) * Insufficient information: (1) - 0001274: crash in Exiv2 shared library when preview from image is extracted (Wil Cowb) * Jpeg parser: (5) - 0001286: Unable to extract ICC profile from Leica Image - 0001282: crash in Exiv2 shared library when JPEG parser is processing the file (Wil Cowb) - 0001220: Bug in exiv2 --comment on trunk - 0001196: Crash in OS X when writing metadata (Taras Kushnir) - 0001156: Extracting "User Comment" from JPEG can cause hang * Lens: (23) - 0001254: Cannot recognize Canon 16-35 f/4 IS L (Niccolò Belli) - 0001252: Detect Sigma 120-300 EX on Canon (Markus Durzinsky) - 0001241: Support for Samyang 14mm f/2.8 AE ED AS IF UMC on Canon EF (Tobias E.) - 0001216: Detection of lens: AF-P DX Nikkor 18-55mm f/3.5-5.6G VR (Chris Benedict) - 0001212: Sigma 18-35mm f/1.8 not recognized (Martin Ramshaw / Thomas Beutlich) - 0001200: Support for Sigma 17-70mm F2.8-4 DC Macro OS HSM | C (Mathieu MD) - 0001191: New lens request (Yvi San) - 0001170: Sigma 35mm F1.4 DG HSM on Canon 6D - 0001167: Issue with Sigma 17-70 lens mounted on a canon - 0001166: Tokina 11-20mm f/2.8 - 0001163: Nikon Lens "Nikkor 16-80mm f/2.8-4G AF-S ED VR DX" not supported (dreas b) - 0001162: New Lens: Tamron 28-300mm F/3.5-6.3 Di VC PZD A010 (Tomasz Ciolek) - 0001161: Feature request: 1 NIKKOR 10mm f/2.8 (Jacob Nederend) - 0001160: Feature Request - New Lens (Mark Mangano) - 0001155: Wrong or just Sigma lens lens info with Pentax K-3 (Hannu Vuolasaho) - 0001153: Sony ILCE-6000 + Sony E 50mm F1.8 OSS .JPG files without lens model. (Tim Sinthofen) - 0001145: Respect Sony/Minolta lenses with shared LensID such as Tamron SP AF 17-50mm F2.8 XR Di II LD - 0001144: Sigma 10-20mm f/4-5.6 EX DC is detected as Tamaron (Simon Harhues) - 0001142: Manual lens does not get recogniced: Beroflex zoom 500mm (Simon Harhues / Niels Kristian Bech Jensen) - 0001141: Manual lens does not get recogniced: Pentax macro 100mm (Simon Harhues / Niels Kristian Bech Jensen) - 0001118: Add support for ZEISS Loxia 2/50 lens (Eugen Neu) - 0000834: detection of Pentax DA 35/2.4 lens (Guillaume Chauvat) - 0000816: Enable detection of Sigma 55-200mm lens (Simon Harhues) * Miscellaneous: (7) - 0001177: Resolve issues in target "Review" - 0001168: User support during v0.26 development - 0001152: MacOS-X Throws listxattr exception frequently - 0001131: Please explain the RCSID macro at the start of every .cpp file. (Daniel Kaneider / Andreas Huggel) - 0001115: Clarification for the Exiv2 license (Harry McKame / Alan Pater) - 0001107: DigiKam hangs during search for new items (Sveinn Felli) - 0000506: Problem setting localedir on Windows (Andreas Huggel) * Metadata: (21) - 0001246: Add option -pe to exiv2(.exe) command-line arguments - 0001201: Rating=4 automatically added when writing sidecar (Elfie Groslin / Alan Pater) - 0001198: Cannot read XMP metadata from (darktable) JPEG images (Matthieu Volat) - 0001197: Add support for Sigma 150-500 on Canon with 1.4X TC (Steve Fosdick / Niels Kristian Bech Jensen) - 0001180: Add tags defined by Adobe in the Cinema DNG Specification (D Anderson) - 0001164: exiv2 tool crash with bad canon raw file (Nicolas THOMASSON) - 0001158: GPSVersionID is allowed to store more than 4 bytes. - 0001128: New lens: TAMRON SP 70-200mm F/2.8 Di VC USD A009 (David Ramonet) - 0001126: Extracting Exif from PNG in Exiv2-0.25 (Mikayel Egibyan) - 0001114: negative values of type SByte displayed as positive numbers (Norbert Wagner) - 0001112: lost timezone information in XMP dates (Jakub Wilk) - 0001108: Recursively dump sub-files of an image - 0001106: Crash in exiv2 due to assertion when setting rating on jpg with a Casio makernote (Luca Carlon / Andreas Huggel) - 0001080: Division by zero / crash on malformed input file (Hanno Böck) - 0001074: ICC Profile in APP2 segment. (Tim Zaman) - 0001060: ISO speed readout & low-light cameras (Thomas Beutlich) - 0001035: Lens model not detected ( exiv2 -> LensFun -> darktable ) (Rodrigo De Leon) - 0000922: Add options -pS and -dI to application exiv2 - 0000855: Segfault when accessing focalLength with 0.23 (Tobias E.) - 0000756: Access to ICC Profile (TAG: 0x8773) data in Exif as uninterpretted binary (Ray NA) - 0000676: Patch for reading ICC color profiles (Andreas Huggel) * Makernote: (14) - 0001283: Exiv2 crash when Pentax makernote tags parser being used (Wil Cowb) - 0001253: After setting LensModel, Lightroom no longer recognizes image (Martin Stolle) - 0001231: Support for Canon TimeInfo makernote section (Tobias E.) - 0001225: Nikon BarometerInfo (Juergen Rose) - 0001223: Decoding ShutterCount for Pentax images - 0001217: Missing values for Exif.CanonCs.ISOSpeed tag 0x0010 (Niccolo Rigacci / Niels Kristian Bech Jensen) - 0001215: Exif.CanonSi.SubjectDistance seems to be in centimeters (Niccolo Rigacci / Niels Kristian Bech Jensen) - 0001208: New values for Sony File Format (Mihail Zenkov / Thomas Beutlich) - 0001202: Exif.CanonCs.FocusContinuous = 8 = Manual (Sridhar Boovaraghavan) - 0001189: Updating time changes Makernote (Stan Kaminski) - 0001179: Update Fujifilm Filmmode tag (Pascal de Bruijn) - 0001140: Canon EF-S 24mm f/2.8 STM (Anonymous Poster) - 0001122: Lens Detection with Teleconverter - Sigma 150-500mm f/5-6.3 APO DG OS HSM again (Steve Fosdick) - 0001117: Problems with Sigma 18-300 F3.5-6.3 DC MACRO HSM Lens (Terence Duell / Niels Kristian Bech Jensen) * Not-a-bug: (18) - 0001290: write exif to a libgphoto2 buffer image (Nacho Sánchez Moreno) - 0001251: Support for Canon PowerShot G7 X Mark II (Wolfgang Ederer) - 0001248: floating point exception / crash on malformed input (Hanno Böck) - 0001221: Export DNG to JPEG issues - missing metadata (Wil Cowb) - 0001185: Crash in Exiv2::Exifdatum::Exifdatum(Exiv2::Exifdatum const&) (Mykola Krachkovsky) - 0001135: Read Makernotes (Schnitzel Foo / Alan Pater) - 0001105: exiv2 output is inconsistent and seemingly random 1% of the time (Daniel Lu) - 0001097: Cannot write GPS coordinates to Canon CR2 files (Meisam FS / Alan Pater) - 0001092: Samsung EX1 (TL500): Focal length wrong in RAW (correct for JPG) (Marcel Müller) - 0001083: Exiv2::focalLength returns multiple values for CRW files (Pedro Côrte-Real) - 0001082: Crash when removing property of unregistered XMP namespace (Johannes Kapune / Alan Pater) - 0000828: Method like ExifTags::taglist or IptcDataSets::dataSetList to get all XMP-tags (Norbert Wagner) - 0000740: Error: Offset of directory Sony1, entry 0x2001 is out of bounds: Offset = 0x004a805e; truncating the entry (Ward V) - 0000715: -funsigned-char breaks build with Sun Studio (Pavel Heimlich) - 0000714: problem compiling with Sun Studio - visibility (Pavel Heimlich) - 0000538: Run-time features must be separated from build-time features (Nikolai Saoukh) - 0000527: Thumbnail extract fails when location ends in directory separator (Jeff Woehler) - 0000465: Support standalone JPEG APP1 segments as an Image format (Andreas Huggel) * Samples: (3) - 0001233: Bugfixes in samples/geotag.cpp (Anton Keks) - 0001024: Provide regular expression support for the exiv2 -g feature - 0000918: non-zero exit code when extracting thumbnails (Romain D.) * Tiff parser: (9) - 0001244: exiv2 without EXV_HAVE_MMAP throws an exception - 0001224: Crash when setting data in CRW - 0001184: digikam crash when importing Casio jpeg (Roland Roberts) - 0001182: Exiv2 is unable to update any Exif.SubImageN.xxx tag such as Exif.SubImage1.DefaultScale in a DNG - 0001175: Exiv2 corrupts files larger than 2GB with Exif IFD at the end of the file (LaserSoft Imaging) - 0001146: Crash when saving a rotated JPG image (Uwe Klotz) - 0001129: Different behaviour of exiv2 between remote and local file. - 0001095: Unexpected Exif IFD next pointers should be ignored (Andreas Huggel) - 0000900: TIFF images lose XMP packet on write if exiv2 was compiled without XMP support (Andreas Huggel) * Testing: (6) - 0001230: Bug Hunt for v0.26 - 0001207: digiKam maintenance tool to synchronize files metadata and database crash in Exiv2 (re-entrancy issue ?) (Uwe Haider) - 0001057: Implement target/modifier - (stdin/stdout) for exiv2 options -i (insert) and -e (extract) - 0001045: Add COPYRIGHT file to test/data/ (Alan Pater) - 0001042: Exiv2 nulls file on CIFS share when modifying Exif.Photo.UserComment (Calvin Browne) - 0001023: Fix make testx on trunk * Video: (2) - 0001280: crash in Exiv2 shared library when a video file is under construction (Wil Cowb) - 0001139: LibExiv2 0.25 crashes with digiKam version 4.14.0 (valerie venet) * Website: (4) - 0001279: Release v0.26 - 0001111: The web pages could use an overhaul (Andreas Huggel) - 0001087: Web site: Broken link for "GIMP has adopted gexiv2" (Thomas Beutlich / Andreas Huggel) - 0000679: Provide 64bit exiv2 Windows Executable for download (Andreas Huggel) * Withdrawn: (26) - 0000949: exiv2 cannot read WB RGGB values in ARW files? (Derek Cordeiro) - 0000827: Bug with Nikon D300 NEF - Exiv v.025 / 64 bits (Vv Pz / Alan Pater) - 0000801: Add Lens "Sigma 18-200mm f/3.5-6.3 DC OS HSM" for Canon (Markus Schwarzenberg) - 0000786: thread safety of xmp toolkit (Jens Mueller) - 0000780: save thumbnail (Florian Kleber) - 0000779: Crash with unknown lens tags in DNG (Moritz Moeller) - 0000768: Reading focal length in 35mm equivalent from Canon's EXIF (Sergey Salnikov) - 0000766: exiv2 seem to decode less metadata from Olympus images than possible (Christoph Anton Mitterer) - 0000763: Olympus E-510 RAW file (ORF) corrupted after geotagging (Spica Han) - 0000762: Fail to set metadata to a tif file (Kent Fu) - 0000744: Regression: can’t get a section’s description in 0.21 (Olivier Tilloy) - 0000682: Olympus (E-1 and E-300) makernote flavour not supported: libexiv2 destroy some exif data on write (Johann-Nikolaus Andreae) - 0000681: Copy exif data when export preview (FV P) - 0000680: Provide the organize binary for download in the Windows package (Andreas Huggel) - 0000667: Update Canon makernote (Andreas Huggel) - 0000648: backup files (Vladimir Nadvornik) - 0000608: list of supported formats (Vladimir Nadvornik) - 0000605: Bitmask output should show set bits for which there is no lookup value (Andreas Huggel) - 0000576: 24x36 equivalent focal length (Andreas Huggel) - 0000557: Debian Bug report logs - #438224libexiv2-0: Wrong values on exposure time (Mark Purcell) - 0000545: rotation of sony a700 raw files (*.arw) not deduced correctly (Markus Spring) - 0000544: Sony camera makernote tags should be read as Minolta does (Stefano -) - 0000543: make exiv2 respect makernote offset that Microsoft WIC tools introduce when it edits photos (Andreas Huggel) - 0000515: exiv2 0.14 installs msg catalog as exiv2.mo instead of exiv2-.mo (Achim Bohnet) - 0000494: Some EXIF data not retrieved from Canon RAW files (Paul Waldo) - 0000470: Provide a means for apps to probe the library which tags can be written to for a given format (Andreas Huggel) * Xmp: (18) - 0001284: Possible exiv2 0.26-svn bug (Wil Cowb) - 0001281: crash in Exiv2, XMP parser class and in Adobe XMP SDK (Wil Cowb) - 0001276: fails to read any XMP metadata when duplicates present (Aerilius .) - 0001229: exiv2 -pX for image with multiple APP1/xap segments prints every APP1/xap segment. - 0001193: XMP Specification November 2014 updates (Alan Pater) - 0001190: Support for CRS and CRSS XMP namespace and properties (Alan Pater) - 0001187: Crash while reading in parallel threads (Taras Kushnir) - 0001148: XMP Rights field padded with spaces (John Huggins) - 0001133: " **(process:29414): WARNING: No namespace info available for xmp prefix 'lr'" (Vey Zimba / Alan Pater) - 0001116: Issues with namespace 'video' (Andreas Huggel) - 0001093: ExifEX XMP namespace and properties (Alan Pater) - 0001081: Read XMP values from CR2 raw file when stored in XMLPacket (Eric Mesa / Alan Pater) - 0001064: exiv2 -iX deletes Makernote (Alan Pater) - 0000751: adobe xmp namespace (Adrian F) - 0000742: External XMPSDK and/or XMPSDK 2014.12 (Nikolai Saoukh / Andreas Huggel) - 0000640: method is missing in Exiv2 to get list of known XMP namespaces (mikolaj -) - 0000601: Metadata conversion enhancements (Andreas Huggel / Alan Pater) - 0000599: XMP packets split across multiple APP1 segments (Andreas Huggel)
  Changes from version 0.24 to 0.25 --------------------------------- * Exiv2 library - 0000442: exivsimple has array index errors when stripping quotes from trivial input strings (Thomas Beutlich) - 0000707: Use SVN eol-style LF on all files (Andreas Huggel, Robin Mills) - 0000886: Access violation on IptcData::operator[] when key is invalid (Robin Mills) - 0000901: PNG images with tiff tags throw exceptions - 0000934: Plasma kde crashes when specific jpeg is on the Desktop (Robin Mills) - 0000945: TIFF parser,Binary array elements should be decoded using the Makernote's endianness, not that of the image (Andreas Huggel) - 0000970: Coverity scan : Issue CID 981992, 981993 (Mahesh Hegde, Phil Harvey, Niels Kristian Bech Jensen) - 0000984: Fix 'failed to rename file' problem caused by virus scanner in windows (Axel Waggershauser, Thomas Beutlich, Robin Mills) - 0000989: Wrong key name in output of addmodel sample (Thomas Beutlich, Robin Mills) - 0001019: Cppcheck: Suspicious usage of 'sizeof' with a numeric constant as parameter. (Thomas Beutlich, Robin Mills) - 0001021: Printing tags does not honor multi-byte label widths correctly (Thomas Schmidt, Robin Mills) - 0001039: Wrong ApertureValue written (Torsten Flammiger, Robin Mills) - 0001043: pyexiv2 fails on cifs shares on an Ubuntu client (thoralf schulze, Robin Mills, Thomas Beutlich) - 0001044: TIFF parser,Parse TIFF PageNumber (Robin Mills) - 0001047: Add new sample applications exifdata and exivvalue (Robin Mills) - 0001053: Add option -K Key (--key Key) to specify one or more keys to output. (Robin Mills) - 0001065: Is fileProtocol thread-safe? (Max Pozdeev, Robin Mills) - 0001072: test/tiff-test.sh is failing on Motorola PPC (Robin Mills) - 0001073: test/bugfixes-test.sh is producing results that change with the time-zone (Robin Mills) - 0001084: Garbage in Exif.Image.Make and Exif.Image.Model in some Samsung SRW files * XMP related - 0000774: "exiv2 -eX" followed by "exiv2 -iX" produces invalid XMP metadata packet (Alan Pater) - 0000784: Writing Xmp.lr.hierarchicalSubject writes wrong datatype (Lucas Beeler, Alan Pater) - 0000863: Unicode issue writing to XMP sidecar - 0000864: Mapping of Exif DateTime fields to XMP changed in spec (Marcel Wiesweg, Alan Pater) - 0000937: Support Darwin Core (DwC) XMP metadata (Alan Pater) - 0000946: Xmp.MPReg.PersonLiveCID vs. PersonLiveIdCID (Phil Harvey, Alan Pater) - 0001040: MWG-KW schema (Alan Pater) - 0001054: Overhaul exiv2json.cpp to build a deeply recursive JSON tree of XMP data (Robin Mills) - 0001058: xml:lang should be treated case insensitive (Tobias E., Robin Mills) - 0001059: Support ACDSee XMP properties (Alan Pater) - 0001063: Google Photo Sphere XMP namespace and properties (Alan Pater) * Makernote related - 0000833: Sony NEX Lens Information (Pascal de Bruijn, Torsten Bronger, Robin Mills) - 0000919: Handle Pentax makernotes in samsung-rebranded cameras (Michael Karcher, Niels Kristian Bech Jensen) - 0000924: Olympus XZ-1 FocusDistance incorrect (Niels Kristian Bech Jensen) - 0000929: Support Panasonic Makernote (Nicolas Nicofo, T Modes, Niels Kristian Bech Jensen) - 0000933: Casio Makernotes (T Modes, Niels Kristian Bech Jensen) - 0000954: patch: support for Exif.CanonFi.FocusDistanceUpper and Exif.CanonFi.FocusDistanceLower (Roman Lebedev, Niels Kristian Bech Jensen) - 0000965: Pentax K-3 MakerNote not recognized due to different maker tag (Pascal de Bruijn, Niels Kristian Bech Jensen) - 0000972: Update Panasonic EXIF Information (Bernd Steinhauser, T Modes, Niels Kristian Bech Jensen) - 0000981: Local build crashes in olympusmn.cpp (Robin Mills) - 0001037: MeasuredEV in CanonSi (Axel Waggershauser, Robin Mills) - 0001062: Exif.NikonWt.Timezone translated value can have 'cruft' (Robin Mills) * Lens support related - 0000834: detection of Pentax DA 35/2.4 lens (Jaroslav and Pascal, Andreas Huggel) - 0000839: Canon EOS M EF-M lenses (Pascal de Bruijn, Robin Mills) - 0000926: Lens matching on Canon (Niels Kristian Bech Jensen) - 0000927: Sigma Lens Not detected (Niels Kristian Bech Jensen) - 0000938: Tamron 18-270 is not detected anymore (Torsten Bronger, Niels Kristian Bech Jensen) - 0000942: Wrong aperture for Tamron 70-300? (Torsten Bronger, Niels Kristian Bech Jensen) - 0000943: Tamron lens names: USD excludes AF (Torsten Bronger, Niels Kristian Bech Jensen) - 0000944: Doubled "AF" for some Tokina lens model names on Nikon cameras (Torsten Bronger, Niels Kristian Bech Jensen) - 0000947: LensID 137 in exiv2 0.23 and 0.24 instead of Tamron as Sigma ??? (Thomas Mörschel, Niels Kristian Bech Jensen) - 0000948: Recognize Samsung NX 10mm Fisheye (Pascal de Bruijn, Niels Kristian Bech Jensen) - 0000951: Pentax/Sigma 24-70mm F2.8 IF EX DG HSM data (Terence Duell, Niels Kristian Bech Jensen) - 0000953: patch: add Tamron AF 18-270mm f/3.5-6.3 Di II VC PZD for Canon (Pekka Sarnila, Niels Kristian Bech Jensen) - 0000959: Wrong value in Exiv data for Sigma lenses (24-105 & 50) (Niels Kristian Bech Jensen) - 0000969: Recognising Sigma 50mm F1.4 DG HSM (Robin Mills, Niels Kristian Bech Jensen) - 0000982: Improve detection of Canon lenses sharing the same IDs (Alexander Steffen, Niels Kristian Bech Jensen) - 0000988: New Lens: Samsung NX 16-50 PZ ED OIS (Pascal de Bruijn, Robin Mills) - 0000996: Sigma 28mm 1.8 EX DG MACRO wrongly detected as "lens 150" (Niels Kristian Bech Jensen) - 0001000: trivial: samsung lens id re-sorting (Pascal de Bruijn, Robin Mills) - 0001005: trivial: Canon EF-S 24mm f/2.8 STM detection (Pascal de Bruijn) - 0001026: Lens not recognized (Bastien O, Niels Kristian Bech Jensen) - 0001027: Lens not recognized (Niels Kristian Bech Jensen) - 0001036: New lens ID for Tamron 70-300mm f/4-5.6 Di VC USD (Canon mount) (C M, Niels Kristian Bech Jensen) - 0001051: Lens request Tamron SP AF 28-75mm F/2.8 XR Di LD Aspherical [IF] MACRO (Petrov Vlad, Niels Kristian Bech Jensen) - 0001070: New lens: Sigma 150-600mm f/5-6.3 DG OS HSM Contemporary for Canon (Alexander Steffen, Niels Kristian Bech Jensen) - 0001079: Rename Canon EF 50mm f/1.8 MkII (Niels Kristian Bech Jensen) * Build environment related - 0000697: config/ConfigureChecks.cmake: STRERROR_R_CHAR_P revisited (Nikolai Saoukh, Robin Mills) - 0000857: CMake compilation issue on MacOS-X 4.5.1/Mountain Lion (Robin Mills) - 0000859: Compilation warning using Clang (Davide Anastasia, Andreas Huggel, Robin Mills) - 0000905: Exiv2 does not run on Windows Vista (Daniel Kaneider, Robin Mills) - 0000916: Implement "Cloud Ready" (Robin Mills, Tuan Nhu) - 0000920: Cross compiling for Android on OSX is keep using '/usr/bin/gcc' (Tao Wang, Gilles Caulier, Robin Mills) - 0000939: make gen.py Python3 compatible (Alex Turbov, Robin Mills) - 0000940: Compilation warnings (Robin Mills) - 0000966: svn_version.sh not executable (Michael Pratt, Robin Mills) - 0000974: svn_version.h not installed, but included in installed version.hpp (Jehan Pagès, Robin Mills) - 0000976: Include Run-Time Search Path for Cmake Builds in exiv2 binary (Gilles Caulier, Nehal J Wani) - 0000979: Temporary File Rename Issue on Windows/MSVC (Robin Mills) - 0000983: Fix Compiler Warnings when using GCC 4.8.1-4 (Nehal J Wani) - 0000991: Windows build broken (CMake+svn_version.sh) (Daniel Kaneider, Robin Mills) - 0000993: Generating svn_version.h with CMake (Daniel Kaneider, Robin Mills) - 0000994: CMake: wrong build rule for svn_version.h (Jehan Pagès, Daniel Kaneider, Robin Mills) - 0001007: exiv2 0.24 Build error on blackfin arch (Nicolas Serafini, Robin Mills) - 0001012: Avoid cyclic inclusion dependency between http.hpp and exiv2.hpp (Thomas Beutlich, Robin Mills) - 0001013: Fix includes of futils.hpp (Thomas Beutlich, Robin Mills) - 0001014: Duplicated header files (Thomas Beutlich, Robin Mills) - 0001015: Avoid MSVC x64 compiler warning in futils.cpp (Thomas Beutlich, Robin Mills) - 0001016: Duplicated header exv_msvc.h (Thomas Beutlich, Robin Mills) - 0001032: CMake doesn't build svn_version.h anymore (Daniel Kaneider, Robin Mills) - 0001046: Report the state of EXV_UNICODE_PATH in exiv2 -vV (Robin Mills) - 0001066: Unable to build for Mac OSX 10.6 (Max Pozdeev, Robin Mills) * Video support related - 0000858: SVN repository download size (Daniel Kaneider, Robin Mills) - 0000936: Video headers include internal include files and need to be added to exiv2.hpp (Andreas Huggel, Robin Mills) - 0000956: Support for .MTS movie format (Abhinav Badola, Robin Mills) - 0000960: Problem With Exiv2 (Video files) (Henrique Fernandes, Abhinav Badola) - 0000961: Crash in digikam while reading metadata from a .MTS movie file (Gilles Caulier, Robin Mills) - 0000999: Arithmetic exception in QuickTimeVideo::mediaHeaderDecoder (Luca Carlon, Abhinav Badola) - 0001017: Arithmetic exception in QuickTimeVideo::mediaHeaderDecoder (Mathieu Clabaut) - 0001033: webm with opus audio. Segmentation fault. (Boris Bogar, Abhinav Badola) - 0001069: Make Video Code a build option (Robin Mills) * Translations - 0000950: Typo in po/exiv2.pot, "Colort temperature" should be replaced by "Color temperature" (Javier Lopez, Niels Kristian Bech Jensen) - 0001003: Typos in German translation (Thomas Beutlich) - 0001004: Missing German translation (Thomas Beutlich) - 0001022: Tag description typo (Thomas Beutlich) - 0001025: Camera model names are defined as localized strings, causing automatic defaults to report incorrect names (Niels Kristian Bech Jensen, Thomas Schmidt) - 0001029: Fix common typos (Thomas Beutlich, Robin Mills) - 0001075: Swedish translation of exiv2 (J A, Niels Kristian Bech Jensen) - 0001085: Typos in strings (Anders Jonsson, Alan Pater) * Documentation and website - 0000869: Invalid links in XMP tag reference pages (Alan Pater) - 0000958: Which video formats are supported by exiv 0.24? (Mahesh Hegde, Abhinav Badola) - 0000986: Website: Invalid link to Exif spec (Thomas Beutlich, Andreas Huggel) - 0000987: Strange wording of Exif.Photo.SensitivityType (Thomas Beutlich, Robin Mills) - 0001006: Directory "test" missing from Exiv2 v0.24 tar/gunzip file (Niels Kristian Bech Jensen, Robin Mills) - 0001055: Provide coding guideline on the project Wiki (Robin Mills) Changes from version 0.23 to 0.24 --------------------------------- * Exiv2 library - 0000700: exiv2 (0.19-1) 00_hyphens_used_as_minus.diff (Reported with patch by Mark Purcell, fixed by Niels Kristian Bech Jensen) - 0000813: Video metadata support (Abhinav Badola for GSoC 2012) - 0000820: Samsung NX100 JPG exports have broken EXIF (Reported by Pascal de Bruijn) - 0000822: Warnings while compiling with g++4.5 (Reported by Sebastien Gilles, fixed by Robin Mills) - 0000831: For TIFF-like images, non-intrusive writing is not used when it should (Reported by Thomas Lotze) - 0000832: Patch to detect Carl Zeiss Planar T* 50mm f/1.4 ZE on Canon (Reported with patch by Stian Grindvoll) - 0000835: Exiv2 fails to compile under Linux (Volker Grabsch) - 0000840: example1.cpp clang Mac OS X warnings (Reported by Jerry Jacobs) - 0000841: Exiv2 crashes on input (Reported by Christian Grothoff) - 0000843: Complete Samsung NX lenses portfolio recognition (Reported with patch by Jaroslav Stepanek, updates by Pascal de Bruijn) - 0000846: Porting the Video Code to MSVC (umbrella) (Robin Mills, Abhinav Badola, Shawn Xiong) - 0000847: Photoshop doesn't recognize its own EPS files after modification by Exiv2 (Volker Grabsch) - 0000849: autotools build (make config ; ./configure ; make) is broken (Robin Mills) - 0000854: Sigma 50mm f/1.4 on Canon not detected correctly (Reported by Rick Gabriel, patch by Aakash Goenka) - 0000860: PENTAX-DA 18-135mm F3.5-5.6 not detected correctly (Reported by S. Verdoold, patch by Pascal de Bruijn) - 0000861: Sigma 18-250mm not properly recognised on Pentax (Reported by S. Verdoold, patch by Pascal de Bruijn) - 0000862: Video code is failing the test suite (on all plaforms) (Robin Mills, Abhinav Badola) - 0000865: Patches for locale and boost issue (Patches by Mario anyc) - 0000868: Support for two lens for sony mount (Patch by Michal Babej) - 0000870: Exif.OlympusEq.0x0403 tag (Christoph Anton Mitterer, Robin Mills) - 0000872: New Samsung NX 12-24mm f/4-5.6 ED (Jaroslav Stepanek) - 0000875: New lens "Tamron SP 24-70mm F/2.8 Di VC USD" (Reported by Jean-Pierre Verrue, patch by Niels Kristian Bech Jensen) - 0000876: New lens: Canon EF 35mm f/2 IS USM (markus kanet, Robin Mills) - 0000877: New camera: Canon EOS 6D (markus kanet) - 0000878: Update list of lenses for Olympus cameras. (Niels Kristian Bech Jensen) - 0000879: Add another lens for Olympus cameras. (Niels Kristian Bech Jensen) - 0000880: Another bunch of Olympus lens updates. (Niels Kristian Bech Jensen) - 0000881: One more Olympus lens - the list is complete. (Niels Kristian Bech Jensen) - 0000882: Nikon AF-S Nikkor 28mm f/1.8G not recognized (Reported by Philip Johnsson, patch by Niels Kristian Bech Jensen) - 0000884: Missing lenses reported by Paul Bissonnette (Robin Mills) - 0000887: Samsung D-Xenon 12-24mm not recognized (Reported by Romain Henriet, patch by S. Verdoold) - 0000888: (near-)infinite loop in video decoders (Reported by Alyssa Milburn, patch by Abhinav Badola) - 0000890: ASF: heap overflow (Reported by Alyssa Milburn, patch by Abhinav Badola) - 0000895: Sigma 30mm f/1.4 on Canon not detected correctly (Reported by Christian Roumano, patch by Aakash Goenka) - 0000896: User-readable output of Olympus' FocusDistance (Patch by Teemu Rytilahti) - 0000897: New Compilation Warnings - 0000899: New lens: Pentax smc DA 18-135mm f/3.5-5.6 ED AL [IF] DC WR (Reported by Matthieu Volat, patch by Pascal de Bruijn) - 0000903: New Lens: Canon EF-S 55-250mm f/4-5.6 IS II (Patch by Andrew Aylett) - 0000904: Exiv2: lensName misreporting for some CR2s (Reported by Pascal de Bruijn, patch by Niels Kristian Bech Jensen) - 0000906: Mountain Lion Plugin crashes when setxattr called (Robin Mills) - 0000907: New Lens: Samsung NX 45mm f1.8 (Pascal de Bruijn) - 0000908: strerror_r gives no error message back (Reported by Ákos Szőts, patch by Robin Mills) - 0000909: New Lens: Samsung NX 45mm f1.8 2D/3D (Pascal de Bruijn) - 0000921: New Lens: Sigma 150-500mm f/5-6.3 APO DG OS HSM on Canon (Steve Fosdick) - 0000928: Maintenance of Sony Makernote (Patch by Thomas Beutlich) * MSVC related - 0000817: zlib 1.2.6 (Reported by Daniel Kaneider, fixed by Robin Mills) - 0000824: undeclared identifier EXV_ICONV_CONST (Reported by Thomas Beutlich, fixed by Robin Mills) * cmake related - 0000685: incomplete handling of iconv dialects for cmake case (Nikolai Saoukh) - 0000694: config/config.h.cmake: const must be without quotes (Nikolai Saoukh, Gilles Caulier) - 0000696: cmake: out of src compilation (Nikolai Saoukh, Gilles Caulier) - 0000698: CMake Error at po/cmake_install.cmake: 36 (Frank Hommes, Gilles Caulier) - 0000722: Unit tests do not build with CMake and out of source build (Johannes Wienke, Robin Mills) - 0000728: typos in cmake files (Nikolai Saoukh, Gilles Caulier) - 0000823: CMake compilation: exv_conf.h at the wrong place (Sebastien Gilles, Robin Mills) - 0000850: test harness does not run on CMake builds (Robin Mills) - 0000852: CMake error on Win8/VS2012 with XMP (Patch by Daniel Kaneider) - 0000853: CMake: more flexible zlib detection (Daniel Kaneider, Robin Mills) - 0000856: CMake: building tests and refactoring on msvc (Daniel Kaneider, Robin Mills) Changes from version 0.22 to 0.23 --------------------------------- * Exiv2 utility - Allow to add/set tags without a value with the command line tool. * Exiv2 library - 0000819: Recognize Pentax MakerNote in DNGPrivateData (Jonathan Kollasch) - 0000815: Patch for Tokina 11-16mm f/2.8 on Canon (Chris Chiappa) - 0000812: Exiv2 destroys hard links (Reported by Anders Kamf) - 0000811: Typo in de.po (Thomas Beutlich) - 0000810: assert(tiffType() == ttUndefined) error in tiffcomposite.cpp (Reported by Auke Nauta) - 0000809: abs ambiguity in nikonmn.cpp (Pavel Heimlich) - 0000808: build failure in jpgimage.cpp - namespace (Pavel Heimlich) - 0000807: spelling-error-in-binary usr/lib/libexiv2.so.9.0.0 Continous Continuous (Mark Purcell) - 0000806: spelling-error-in-manpage src/exiv2.1 explicitely explicitly (Mark Purcell) - 0000803: Rational/URational issue in convert.cpp (Pavel Heimlich) - 0000800: Missing Photoshop IRB types (8BIM, PHUT, DCSR, AgHg) (Michael Ulbrich, Volker Grabsch) - 0000799: Exiv2 returns wrong XMP type for nested XMP keys - 0000798: Add MS Photo RegionInfo and MetaWorkingGroup Regions schemas (Benjamin H.) - 0000797: A crash can occur with certain JPEGs. (Clint Rogers) - 0000795: Set/Get of PNG comment (Reported by Thomas Beutlich) - 0000794: Typo in exifFlash description (Thomas Beutlich) - 0000793: PNG comment is not set (Thomas Beutlich) - 0000792: New Canon Lens EF-S 18-55mm f/3.5-5.6 IS II (Andreas Ferber) - 0000791: Tamron SP AF 17-50mm F/2,8 XR Di II LD Aspherical [IF] Nikon lens (Philip Johnsson) - 0000790: XMP embedding corrupts CorelDRAW EPS files - 0000778: Add support for Windows Live Photo Gallery face tags (Leif Huhn) - 0000635: [Wish] Write support for Canon RAW CR2 files - Updated Nikon Lens lookup table to v4.3.428.01 of Robert Rottmerhusen's fmountlens list. - Added support for Nikon3 AF Fine Tune array. (Frans van den Bergh) - Added Canon EF-S 18-55mm f/3.5-5.6 III lens. (Jon Charnas) - Fixes to buildForMac to work with 0.22 on Leopard and Lion (Robin Mills) - Added several KIPI XMP properties (Gilles Caulier) - Added cmake patch to fix compilation on MSVC with KDE Windows (Ananta Palani) - Fixed the supported metadata declared by the Image for several image formats (mostly XMP was missing). - Added support for CR2 IFD2 image preview. (An uncompressed TIFF image without white-balance correction.) * MSVC related - Added support for stdint.h being available in DevStudio 2010 (Thanks to Ketil Wright for bringing this to our attention) Changes from version 0.21.1 to 0.22 ----------------------------------- * Exiv2 utility - Fixed time setting of -T option when DST is in effect. - Added version hex number to the output of "exiv2 -V". * Exiv2 library - 0000798: Added people/photo region tagging schemas MS Photo 1.2 RegionInfo and MWG Regions (Benjamin Henne) - 0000785: Exif version 2.3 missing tag codes. (Patch by Jens Mueller) - 0000782: Tamron 18-270mm lens. (Patch by Jens Mueller) - 0000781: Exif 2.3 & DNG 1.2/1.3 tags. (Patch by Jens Mueller) - 0000776: Some tests depend on system settings (locale, path, etc). (Volker Grabsch) - 0000775: Sort iptc data by record number when encoding. (Patch by Matthias Baas) - 0000772: New Tamron 70-300 mm lens improperly recognized. (Reported by Marie-Noëlle Augendre, patch by Milan Knizek) - 0000769: "Assertion `sv == d' failed" in 0.21.1 (r2474). (Reported by Derek Chen-Becker, reproducer by Paolo Bacchilega) - 0000767: Build failure on MinGW with GCC >= 4.6 because of "-no-undefined". (Volker Grabsch) - 0000765: Debug messages of psdimages.cpp go to stdout instead of stderr. (Volker Grabsch) - 0000764: PSD resource block handling patch II. (Patch by Michael Ulbrich) - 0000761: Setting metadata on an image should always succeed. (Patch by Matthias Baas) - 0000760: Exiv2 fails to write to JPEG with an empty APP13 Photoshop PS3 segment. (Reported by Stefan Brandl) - 0000757: Wrong ELSE statement in src/CMakeLists.txt. (Reported by Michael Hansen) - 0000708: On Windows (MSVC and MinGW builds), charset conversions now use respective Windows functions if iconv is not available. - 0000689: Support for Encapsulated PostScript (*.eps) files. (Michael Ulbrich, Volker Grabsch) - 0000439: The exiv2 library should be re-entrant. (Patch by Jonathan Potter, GP Software) - Fixed typo: SupplementalCategory -> SupplementalCategories. (Jürgen Wolz) - Added Tokina AT-X 107 AF DX Fish-eye 10-17mm f/3.5-4.5 lens. (Milan Knizek) - Added Exif.Panasonic.LensType to the Exiv2::lensName() easy-access function. (Adrian Woodley) - Added Exif.OlympusEq.LensModel to the Exiv2::lensName() easy-access function. (Niels Kristian Bech Jensen) - Added new function Exiv2::versionNumberHexString(). (Volker Grabsch) - Updated Nikon Lens lookup table to v4.3.423.01 of Robert Rottmerhusen's fmountlens list. - Updated Samsung makernote. - Break-up ValueType constructor into two as a workaround for a MSVC 7.1 bug. - Simplified LogMsg to make it more portable and more efficient. (The original version doesn't build with MSVC 7.1.) * MSVC related - Added build environment for MSVC 64 bit builds. (Robin Mills) Changes from version 0.21 to 0.21.1 ----------------------------------- * Exiv2 library - 0000759: Cannot extract exif data from Pentax K-x DNG file. (Reported by Kenneth Bogert) - 0000752: Crash when writing Exif.Image.Software. (Reported by Jim Nelson) - 0000750: Assertion in XmpParser::encode should be an exception. - 0000749: Regression: Compilation error with EXV_HAVE_XMP_TOOLKIT undefined. (Reported by Fulvio Senore) - 0000745: Regression: Panasonic RW2 files are missing information. (Reported by Matthias Welwarsky) - Updated configuration files (config.guess, config.sub). - Added new Color Label value to digiKam 2.0.0 XMP namespace. (Gilles Caulier) Changes from version 0.20 to 0.21 --------------------------------- * Exiv2 utility - 0000727: Exiv2 command line tool: grep should find all occurrences of a tag, not only one. (Reported by Steve Wright) - Added option -q (quiet) to silence warnings and error messages from the Exiv2 library to the exiv2 command line tool. - Allow "migration" of XMP namespaces. * Exiv2 library - 0000476: Error handler: Applications should be able to register an error handler. (Based on work by Simson Garfinkel) - 0000614: Silence warnings from code. - 0000712: Support of Sigma 17-50 2.8 OS HSM. (Reported by Steffen bla) - 0000713: Tag 0x0203 in Olympus makernotes should be "Lens ID". - 0000719: Remove makernote classes and pretty-print functions from the published interface. - 0000721: Remove IfdId from the published interface. - 0000726: Add support for Samsung's .SRW raw format. (Reported by Oleg Yermakov) - 0000564: Need a way to get a list of all supported tags. (Reported by Jan Kundr) - 0000593: The default type of Array element tags is incorrect. - 0000625: New image formats and improved makernote support should not break ABI. - 0000678: Lensname missing with EF100mm f/2.8L Macro IS USM. (Reported by Christoph Spiel) - 0000711: exiv2 0.20 is corrupting ORF files from E-PL1. (Reported by Mark Haun) - 0000714: Problem compiling with Sun Studio - visibility. (Reported by Pavel Heimlich) - 0000717: Writing Exif.Image.ImageDescription in ORF file corrupts file. (Reported by Wouter Portegijs) - 0000734: Support for Tamron 17-50mm f/2.8 SP XR LD II Di VC. (Reported by Jari-Matti Mäkelä) - 0000735: Support for Sigma AF 50mm f/1.4 EX DG HSM. (Reported by Jari-Matti Mäkelä) - 0000736: Exiv2 crash on "print". (Reported by Bastian Holst) - 0000737: Metadata of Canon EF-S 18-55mm are not read correctly. (Reported by G. Lechner) - 0000739: exiv2 crashes when examining previews. (Reported by Jim Nelson) - 0000709: Typo in XMPCore_Impl.hpp. (Patch by Dimitri Schoolwerth) - 0000716: Missing header in canonmp.cpp. (Patch by Pavel Heimlich) - 0000723: Fix pkg-config file. (Patch by Johannes Wienke) - 0000738: PSD resource block handling patch. (Patch by Michael Ulbrich) - Updated Nikon Lens lookup table to v4.3.410.01 of Robert Rottmerhusen's fmountlens list. - Introduced exiv2.hpp as a wrapper to include all Exiv2 objects. - Added a count field to the Exif tag reference data. (Patch by Matthias Baas) - Added ExifKey::defaultCount() to access the new count reference information. - Fixed zlib uncompression of large PNG metadata buffers. - Improved determination of MIME type. - Updated Canon makernote. (Greg Mansfield, Axel Waggershauser) - Updated Olympus makernote. (Greg Mansfield) - Updated Sony and Minolta makernote tags. (Gilles Caulier) - Fixed writing to pseudo memory mapped areas on Linux. - Modified test for XMP files to not recognize any XML file with a regular header as XMP. - Added afPoint() easy-access function. (Based on a patch by july) - Updated Spanish translations. (Pablo Valdés) * MSVC related - Updated MSVC project files (and notes) to build with DevStudio 2010 (and with DevStudio 2003/5/8). (Robin Mills) - Changes to MSVC build environment: renamed generated libraries. (Robin Mills, Jon Roch-Berry) Changes from version 0.19 to 0.20 --------------------------------- * Exiv2 utility - 0000683: %a broken in rename (Reported by Göran Uddeborg) - 0000572: It should be possible to insert newlines in text strings. (Implemented using a new function by Leo Sutic) - 0000562: Exif.Photo.UserComment unicode comment doesn't work (Debian bug 486884) - Added -g option to 'grep' info for individual tags. * Exiv2 library - 0000705: Pentax 645D makernote update (Patch by Michal Čihař) - 0000704: Update of Pentax makernote (Patch by Michal Čihař) - 0000701: Nikon Capture NX won't save a NEF file manipulated with exiv2 from SVN (Reported by Frank Hommes) - 0000699: Padding of XMP data results in invalid XMP JPEG segment larger than 65535 bytes (Patch by Joachim Gelhaus) - 0000695: Add XMP support for src/metacopy (Patch by Nikolai Saoukh) - 0000693: src/psdimage.cpp: operands of ? are integers of different signs: 'unsigned int' and 'long' (Patch by Nikolai Saoukh) - 0000690: Wrong conversion of IPTC SpecialInstructions in copyIptcToXmp() (Patch by Volker Grabsch) - 0000686: LLVM clang: error: default initialization of an object of const type 'class Exiv2::IptcData const' requires a user-provided default constructor. (Reported by Nikolai Saoukh) - 0000684: Exif.Image.SubIFDs should support more than 4 sub-IFDs (Reported by frith [dot] foottit [at] gmail [dot] com in digiKam bug 210259) - 0000677: Nikon Makernote tags regression in exiv 0.19 (Reported by Mark Purcell. digiKam bug 224094, Debian bug 579835) - 0000674: ShutterSpeedValue should be a signed rational (Patch by Olivier Tilloy) - 0000673: Allow XMP sidecar files which start with a UTF-8 BOM (Reported by Michael Friess) - 0000672: Image file gets deleted when writing to it (Reported with reproducer by Thomas Beutlich) - 0000671: Writing to read-only TIFF-like file fails - 0000668: "TIFF-safe" setExifData variant - 0000666: Optimize binary array elements - 0000665: Write support for Olympus RAW ORF files - 0000662: Incorrect Unicode encoding of Exif UserComment tag (Leo Sutic) - 0000659: LensType not reported for Pentax K-x (Reported by Piotr Ryszkiewicz) - 0000611: Add support for makernote of Sony ARW files (Gilles Caulier) - 0000569: Unable to write GPS data in ORF files with digikam (Reported by Johannes Wienke. digiKam bug 170693) - Added Kipi XMP namespace used by digiKam kipi-plugins (Gilles Caulier) - Added iView Media Pro and MS Expression Media XMP schemas. (Silversleeves) - Generalized class Error, added class WError for use with Unicode-Paths. - Updated Nikon Lens lookup table to v4.3.401.01 of Robert Rottmerhusen's fmountlens list. - Various fixes and enhancements when building with MSVC. (Robin Mills, Thomas Beutlich, Jens Mueller) - Added several missing TIFF tags (from PageMaker 6.0, Adobe OPI TIFF, Adobe TIFF&PM6 and TIFF/EP specs). - Completed support for Nikon makernote (Jens Mueller) Changes from version 0.18.2 to 0.19 ----------------------------------- * Exiv2 utility - Inverted the meaning of -u to deal with large numbers of unknown Nikon Makernote tags. - -b option now also suppresses Byte and SByte values. * Exiv2 library - 0000664: Crash when reading PNG image. (Reported by Marcel Wiesweg. digiKam bug 220322) - 0000661: Tag Exif.Image.ImageResources (0x8649 in IFD0) should have type BYTE (1). - 0000658: Exception to print raw from Olympus SP-560UZ. (Reported by Francisco Javier Felix Belmonte) - 0000657: Nef Metadata edit with Digikam make impossible to open it with captureNX or ViewNX. (Reported by Nicolas Boulesteix) - 0000656: Broken image causes exiv2 to abort. (Reported by Nathaniel W. Turner. digiKam bug 214913) - 0000653: SVN 1912 fails to build. (Reported by mike m) - 0000652: Problems converting SubSec tags to XMP. - 0000651: Exif tag: TimeZoneOffset (0x882a) and other TIFF/EP tags missing. (Reported by Gary Cohen) - 0000649: Converter fixes. (Patches by Vladimir Nadvornik) - 0000647: Seg fault with Olympus E-P1 orf. (Reported by Udi Fuchs) - 0000646: Additional lens data. (Reported by mike m) - 0000645: Conversion from XMP sidecar leaks XMP-SDK exception. (digiKam bug 204042, patches by Vladimir Nadvornik) - 0000642: string formatting of error #31. (Patch by Matthias Barkhoff) - 0000641: exiv2 "Image size" output broken for Nikon D700 NEF files. (Reported by Martin Paris) - 0000634: Locking error on windows when updating a TIFF file with MemoryMapping enabled. (Reported and fixed by Robin Mills) - 0000629: Virtual functions should not be inlined. - 0000627: typeId methods not available, -fvisibility-inlines-hidden (Reported by Rex Dieter) - 0000620: Update Nikon makernotes. - 0000617: Optimize TIFF writing. - 0000600: Upgrade XMP Toolkit to version 4.4.2. - 0000581: Remove FindMetadatum* from API. - 0000579: Implement memory mapping for Windows platforms. (Based on an implementation by Robin Mills) - 0000571: Need to convert character set when writing XMP sidecar. (Reported by Franz Buchinger, patch by Vladimir Nadvornik) - 0000533: Support multiple APP13 Photoshop 3.0 segments in a JPEG. (Designed and implemented by Michael Ulbrich and Volker Grabsch) - Changed FileIo and MemIo classes to use a Pimpl structure. - Removed --disable-printucs2 configure option. - Updated config files - Added support for Canon FileInfo tags (Andi Clemens). - Updated Nikon Lens lookup table to v4.1.361.01 of Robert Rottmerhusen's fmountlens list. - Added Sigma 28-80mm f/3.5-5.6 lens. (Jo Hanika) - Added support for Unicode paths on Windows (experimental) (Based on work by Jonathan Potter, GP Software) - Added easy-access functions saturation, sharpness, contrast and sceneCaptureType. (Jonathan Potter, GP Software) - Fixed compilation warnings/error under MSVC when building for x64. (Jonathan Potter, GP Software) - On Windows, use Windows function for conversion of UCS-2 strings. (Jonathan Potter, GP Software) - Support for PGF files added. (Gilles Caulier) - Updated digiKam XMP properties. (Gilles Caulier) - Added iptc4xmpExt and plus XMP schemas. (Based on a patch from Mikolaj Machowski). - [translation] Updated Finnish translations. (Mikael Lammentausta) - [translations] Updated Polish translations. (Michal Smoczyk) Changes from version 0.18.1 to 0.18.2 ------------------------------------- * Exiv2 library - 0000638: Valgrind reports errors when writing to PNG image. - 0000636: Exiv2 corrupts certain NEF images when writing to them. (digiKam bug 193228) - 0000633: Editing via symlink does not work as expected. (Reported by Vladimir Nadvornik. Also reported as Debian bugs 466944 and 511273) - 0000632: [translation] a few more small bugs. (Reported by Michal Smoczyk) - 0000631: [translation] a few bugs. (Reported by Michal Smoczyk) - 0000630: PNG images: CRC error in chunk zTXt. (Reported by gegio 0, patch by Jochen Schug) - 0000628: JPG images: Exiv2 puts comments directly after SOI. (Reported by Johannes Hofmann) - 0000626: PNG images: Setting IPTC preview corrupts PNG image. (Reported by Gilles Caulier) - 0000556: timegm() function should work with Windows 64bit time_t. (Robin Mills) - PNG images: Embed IPTC data in a Photoshop IRB. - PNG images: Support creation of an image. (Gilles Caulier) - JP2 images: Support creation of an image. (Gilles Caulier) - Added a new Sigma lens to Minolta makernote. (Gilles Caulier) - Updated Nikon Lens lookup table to v4.0.352.00 of Robert Rottmerhusen's lens database. - Fixed illegal read in ValueType<T>::read(). - [translation] Updated Polish translations. (Michal Smoczyk) Changes from version 0.18 to 0.18.1 ----------------------------------- * Utilities - 0000612: Failed to delete XMP data from NEF (or any other TIFF-based) images. (Reported by Martin Eriksson) - 0000602: Exiv2 generated TIFF incompatible with libtiff. (Reported by Udi Fuchs) - Added new "organize" tool (Brad Schick). * Exiv2 library - 0000623: Remove TiffPrinter visitor. - 0000622: Exiv2 doesn't parse MicrosoftPhoto schema prefix correctly. (Reported by Gilles Caulier / Sylvain Crouzillat) - 0000619: Segfault when opening PNG image. (Reported with patch by Lukasz Krzyzak) - 0000618: Easy access to information which may be in different Exif tags. (Based on a patch from Carsten Pfeiffer) - 0000615: Setting the Exif makernote tag aborts if type is not "undefined". (digiKam bug 182738) - 0000609: Building a DLL of Exiv2 0.18 in MinGW requires -no-undefined linker flag. (Reported with solution by Giuseppe Rota) - 0000606: Add write support for Photoshop PSD image format. (Patch from Michael Ulbrich) - 0000604: Nikkor lens on Nikon D90 not recognized. (Reported by Niels Kristian Bech Jensen) - 0000603: Exiv2 does not read lens maker. (Reported by Niels Kristian Bech Jensen) - 0000594: Modifying images on an NTFS file system fails. (digiKam bug 178103) - 0000494: Patch for displaying focal length (Exif.Canon.FocalLength). (Patch from Artis Rozentals) - Updated Panasonic makernote. - Added read-support for Panasonic RW2 raw images. (With valuable input from Matthias Welwarsky) - Some Nikon makernote updates. - Updated Nikon Lens lookup table to v4.0.347.00 of Robert Rottmerhusen's lens database. - Fixed crash in Pentax makernote pretty-printing code. (Reported by Marijn Kampf) - Refactored TiffCreator: simplified, fixed several todo's, added support for multiple TIFF tree structures. * MSVC related - 0000621: windows librarys are forcing a link to ..\..\..\zlib-1.2.3\projects\visual6\blah\blah. (Reported by Peter J. Ersts, fix by Robin Mills) Changes from version 0.18-pre2 to 0.18 -------------------------------------- * Exiv2 utility - 0000580: [tools] -M option fails and reports success. (Reported by Daniel Blueman) - [tools] Added options -pp and -ep to list and extract preview images. - [tools] Added option -pa to print all metadata, added control for the type of metadata in option -P. * Exiv2 library - 0000591: [build environment] Added missing #includes for g++ 4.4. (Debian bug 505023, patch from Martin Michlmayr) - 0000586: [metadata] ValueType<T> constructor makes assumptions of the endianness of the machine. (Reported by Dimitri) - 0000584: [build environment] Linking fails for PreviewImage::pData(). (Reported by Joakim Rosqvist) - 0000583: [build environment] Linking fails when compiling. (Reported by Joakim Rosqvist) - 0000542: [exif] Exiv2 doesn't find exif data in attached file. (Reported by Paolo Benvenuto) - [exif] Updated Nikon lens info to v3.82 of Robert Rottmerhusen's lens database. - [exif] Fixed adjustment of invalid tag data. (digiKam bug 177457) - [exif] Catch unknown makernotes before reading the IFD. (digiKam bug 174620) - [exif] Introduced logic to fit Exif data in a 64kB block when writing to JPEG images. - [exif] Various TIFF parser improvements. - [exif] Added support for Olympus FE and Raw Info subdirs and tags. - [design] class PreviewImage: Added members to access all preview properties. - [design] class Metadatum and derived classes: Added familyName() and groupName(). - [design] class ExifData: Added erase(beg, end). - [translation] Updated Polish translations. (Piotr Eljasiak) - [translation] Updated German translation. (Oliver Dörr) - [translation] Updated Slovak translations. (Ivan Masar) * MSVC related - 0000578: [build environment] More fixes for the MSVC build environment. (Robin Mills) Changes from version 0.18-pre1 to 0.18-pre2 ------------------------------------------- * MSVC related - 0000567: [build environment] Re-wrote MSVC build files. Now builds an experimental DLL among other improvements. (Robin Mills) * Exiv2 library - 0000570: [exif] Fuji SP-3000 Makernote not recognized. (Reported by han AT whria DOT net) - 0000516: [exif] Print functions need access to other tags. - 0000473: [design] Support Preview images. (Vladimir Nadvornik) - [exif] Fixed non-intrusive encoding for Minolta array elements. - [exif] Fixed test whether data area is outside of the data buffer. - [exif] Added check for circular IFD references to new TIFF parser. - [exif] Added Exif.CanonCs.LensType and pretty-print function. - [exif] Added Nikon decryption algorithm and use it to decode lens data. - [misc] Initialized variable which lead to crash on Windows. (Reported by Robin Mills). - [exif] Added synthesized info tags Exif.MakerNote.Offset and Exif.MakerNote.ByteOrder. - [misc] Some performance improvements. (Analysis by Vladimir Nadvornik) - [exif] Always add Exif.Photo.Makernote tag, even if the makernote is decoded. - [xmp] Fixed issue with custom namespaces ending with a #. (Reported by chrysn) - [exif] Added Olympus2 makernote support. (Vladimir Nadvornik) - [translation] Updated German translation. (Oliver Dörr) - [translation] Updated Polish translation. (Piotr Eljasiak) - [design] Removed inline functions from class hierarchies. (Patrick Spendrin) Changes from version 0.17.1 to 0.18-pre1 ---------------------------------------- * Exiv2 library - 0000568: [metadata] exiv2 -ps crash for some jpeg files. (Reported by aurelien) - 0000566: [miscellaneous] RSA licensed MD5.cpp file in exiv2 0.16. (Reported with fix by Dirk Mueller) - 0000565: [exif] IFDs and IFD offsets need to be aligned to word boundaries. (Reported by iplabs.de) - 0000554: [exif] Setting "Exif.Image.DateTime Date" gives "Value too large" exception. (Debian Bug 426274) - 0000553: [design] [U]Rational::toLong() and toFloat() should not divide by 0. - 0000528: [miscellaneous] typeSize is meant for Exif metadata only. - 0000526: [metadata] Adding GPS info removes preview image from Nikon Coolpix JPGs. (Reported by paulb) - 0000524: [design] Publish only API objects in the installed header files. - 0000523: [miscellaneous] C++ symbol visibility support for gcc builds. - 0000464: [metadata] Write support for PNG images. (Gilles Caulier) - 0000462: [exif] Write support for TIFF format ("New TIFF parser"). - 0000405: [design] Separate metadata parsing from metadata storage. - [metadata] Write support for JPEG2000 format. (Gilles Caulier) - [exif] Updated Nikon lens info to v3.25 of Robert Rottmerhusen's lens database. - [xmp] Added Microsoft Photo and digiKam XMP schemas. (Gilles Caulier) - [exif] Added DNG tags. Changes from version 0.17 to 0.17.1 ----------------------------------- * Exiv2 library - 0000560: [xmp] Can't delete (last) XMP tag. (Reported by SerGioGioGio) - 0000559: [exif] Crash when extracting Exif orientation flag from Kodak DCR raw file. (Reported by Gilles Caulier) - 0000558: [jpeg i/o] "Warning: JPEG format error, rc = 5" for most of my JPEG files. (Reported with patch by Marcus Holland-Moritz) - 0000552: [build environment] Build failure under Mac OS X 10.3.9 (Reported by Marius Schamschula) - [exif] Fixed several potential division by 0 bugs. Changes from version 0.16 to 0.17 --------------------------------- * Exiv2 utility - [tools] exiv2 now writes a proper XMP sidecar file (it used to just dump the XMP packet to a file). - [tools] exiv2 can now also save Exif and IPTC data in the XMP sidecar file (conversion of Exif/IPTC to/from XMP). * Exiv2 library - 0000550: [design] Remove "MakerTagInfo registry" and registration logic. - 0000547: [build environment] exiv2 0.16 fails to compile with gcc 4.3.0. - 0000546: [exif] Exiv2 crashes while converting Nikon lens information for pretty printing. - 0000541: [translation] French translation mistake. - 0000540: [xmp] Pretty-print functionality for XMP. (Adrien Bustany for GHOP 98) - 0000539: [xmp] Cannot add XMP properties in a custom namespace. (Vladimir Nadvornik, S M Ryan) - 0000532: [xmp] Added conversions to and from XMP. (Vladimir Nadvornik) - 0000474: [design] Add a metadatum member to access translated tag values without the need to use streams. - [metadata] Added read support for jp2 and psd images, stubs for gif, bmp and tga images, and pixelWidth and pixelHeight methods on class Image. (Marco Piovanelli - Ovolab) - [exif] Updated Nikon lens info to v3.18 of Robert Rottmerhusen's lens database. - [exif] Updated Pentax makernote tags. (Michal Čihař) - [xmp] Added support for XMP sidecar files. - [xmp] Improved XMP value toLong, toFloat and toRational using new functions parseLong, parseFloat and parseRational. (Vladimir Nadvornik) - [xmp] Allow format options for XmpParser::encode. (Vladimir Nadvornik) - [xmp] Added LangAltValue::toString(const std::string&) to get the value for a specific language qualifier. (suggested by Marco Piovanelli) - [xmp] Fixed XmpKey::tagLabel() for custom keys. (Reported by Vladimir Nadvornik) - [miscellaneous] Define pid_t using a typedef instead of #define in Windows environments. (Robin Mills) - [translation] Updated German translation. (Oliver Dörr) - [translation] Updated French translation. (Fabien Salvi) - [translation] Updated Polish translation. (Piotr Eljasiak) - [translation] Updated Russian translation. (Alexandre Prokoudine) - [translation] Added Slovak translation. (helix84) Changes from version 0.16-pre1 to 0.16 -------------------------------------- * Exiv2 utility - 0000484: [tools] exiv2 -T adjusts file timestamp wrongly. (Reported by Dave Locke) - 0000477: [tools] Adjust year, month and day of the timestamp. (Based on a patch by David Grundberg) - [tools] Modified fixiso action to handle Canon tags as well. (Highlighted by Michael Mather) * Exiv2 library - 0000537: [miscellaneous] Broken PNG image causes exiv2 to crash. (digiKam bug 155105, reported by Michal Kosmulski) - 0000534: [exif] Integer overflow when reading thumbnail. (Reported by Meder Kydyraliev, Google Security Team) - 0000533: [iptc] Read IPTC data from multiple APP13 Photoshop 3.0 segments. - 0000531: [exif] Pentax lens info decoding. (Patch by Michal Čihař) - [exif] Updated Nikon lens info to v2.99 of Robert Rottmerhusen's lens database. - [doc] Added reference tables for XMP properties to documentation. - [miscellaneous] Updated German translation. (Oliver Dörr) - [miscellaneous] Updated Polish translation. (Piotr Eljasiak) * MSVC related - 0000535: [build environment] unlink() declaration conflicts with Visual Studio stdio.h. (Reported with patch by Nikolai Saoukh) - 0000514: [miscellaneous] Linking with libexiv2 masks system localtime, and on MinGW, that of libexiv2 doesn't handle DST correctly. - [build environment] Fixed compilation of the samples. - [build environment] Added support for XMP to MSVC project files. Changes from version 0.15 to 0.16-pre1 -------------------------------------- * Exiv2 utility - 0000463: [design] Add support for XMP metadata. * Exiv2 library - 0000529: [exif] Add support for Pentax maker note. (Michal Čihař) - 0000522: [exif] Lightzone-created JPEG causes exiv2 to segfault. (Reported by Markus Spring) - 0000463: [design] Add support for XMP metadata. - [exif] Support for Olympus ORF format. (Jeff Costlow) - [exif] Updated Nikon lens info to v2.40 of Robert Rottmerhusen's lens database. - [exif] Added Minolta lenses. (Hiroshi Kawashima) - [exif] Ported various Exif tags from Exiftool. (Gilles Caulier) - [miscellaneous] Added i18n for XMP properties, XMP support in PNG images. (Gilles Caulier) - [build environment] Isolated sample programs in their own directory. - [miscellaneous] Updated French translation. (Olivier Tilloy) - [miscellaneous] Updated German translation. (Oliver Dörr) - [miscellaneous] Updated Polish translation. (Piotr Eljasiak) - [miscellaneous] Updated Russian translation. (Alexandre Prokoudine) Changes from version 0.14 to 0.15 --------------------------------- * Exiv2 utility - 0000518: Return code 0 when unable to insert exif tags. (Reported by Daniel J Blueman) - Rename action: Use Exif.Image.DateTime if Exif.Photo.DateTimeOriginal is not present. (Highlighted by mflanagan_swim) * Exiv2 library - 0000521: [exif] Image with large invalid Exif tag crashes exiv2. (Reported by Marco Piovanelli) - 0000520: [exif] crash when loading certain image. (Reported by Christian Weiske) - 0000519: [exif] Another Minolta G500 file impossible to read after fix. (Reported by Alexander Rabtchevich) - 0000513: [exif] Sony Makernote crashes exiv2. (Reported by Aaron D. Campbell) - 0000512: [exif] Wrong AFPoints mapping for Canon cameras. (Reported with patch by Rob Walker) - 0000511: [exif] Minolta G500 RAW format support. (Reported by Udi Fuchs) - 0000509: [miscellaneous] Since v0.14 the version check macro doesn't work in a precompiler #if test anymore. (Reported by Udi Fuchs) - 0000449: [jpeg i/o] Uncouple IPTC and Exif reading. - [exif] Updated Nikon lens info to v2.30 of Robert Rottmerhusen's lens database. - [Exif] Added additional values to the Exif.CanonCs.ISOSpeed. lookup table. (Patrick Markert) - [Exif] Canon ModelId patch. (Gerry Patterson) - [miscellaneous] Updated German translation. (Oliver Dörr) - [miscellaneous] Updated Russian translation. (Alexandre Prokoudine) - [miscellaneous] Updated French translation. (Stephane Pontier) Changes from version 0.13 to 0.14 --------------------------------- * Exiv2 utility - [tools] exiv2 utility: Fixed handling of multiple rename options -r, -t, -T * Exiv2 library - 0000508: [exif] Fixed mapping of CRW rotation info to Exif orientation. (Reported and analysed by Marco Piovanelli) - 0000507: [exif] Fixed RAF read-support for systems without mmap. (Reported by Udi Fuchs) - [exif] Added tag names for a few tags used by Windows Vista and ACDSee. (Gilles Caulier) - [exif] Updated Nikon lens info to v2.20 of Robert Rottmerhusen's lens database. - [build environment] Switched to libtool's -version-info versioning system. - [build environment] By default, do not use the -g compiler option. - [build environment] Added --disable-printucs2 configuration option to disable Windows tag character conversion using libiconv. - [build environment] Changes to make Exiv2 cross-compile smoothly for win32 (Udi Fuchs) - [build environment] Removed deprecated exiv2-config script and some obsolescent autoconf macros pointed out by Udi Fuchs. - [miscellaneous] Changed AnyError to inherit from std::exception; changed the signature of AnyError::what(). (Suggested by Marco Piovanelli) - [miscellaneous] Fixed version check macro to actually check the runtime version and not the compile-time version. Added version() and versionNumber() functions. - [miscellaneous] Updated German translation. (Oliver Dörr) - [miscellaneous] Changed name of installed translation files to lower case exiv2.mo. (Highlighted by Angelo Naselli) Changes from version 0.12 to 0.13 --------------------------------- * Exiv2 utility - 0000504: [tools] exiv2 utility: allow use of -M and -m options with extract and insert actions. * Exiv2 library - 0000503: [metadata] Tiff generated by photoshop crashes exiv2 (digikam bug 139658). - 0000502: [iptc] New TIFF parser: Decode IPTC from Exif.Image.IPTCNAA. (Reported by Walter Hangartner) - 0000501: [iptc] IPTC field parsing is still too strict: shouldn't fail if the type is not as expected. (Reported by Elsa Nordh) - 0000497: [tools] exiv2 tool doesn't respect unix file rights. (Reported and analysed by fabien) - 0000491: [miscellaneous] Probe exiv2 for the extensions it supports. (Suggested by Will Stokes) - 0000461: [miscellaneous] Add i18n support. Requires gettext. (Gilles Caulier) The currently available translations are still work in progress: Finnish by Mikael Lammentausta French by Gilles Caulier (ported from libexif) and Olivier Tilloy German by Gilles Caulier (ported from libexif) and Oliver Dörr Russian by Alexandre Prokoudine Polish, Spanish by Gilles Caulier, ported from libexif - 0000460: [exif] Exiv2 should support to decode/encode Windows tags Exif.Image.0x9c9b-0x9c9f. Requires libiconv. (Suggested by Jose Oliver) - 0000452: [exif] Non-intrusive writing does not update IFD. - [exif] Updated Nikon lens info to v2.15 of Robert Rottmerhusen's lens database. - [exif] Added read-support for Fujifilm RAF images. - [exif] Image class hierarchy refactored: Image now has containers and provides default implementations for most methods. Calling an unsupported method of any Image subclass now results in an exception. Added a method to access the MIME type of an image. * MSVC related - [exivsimple] Added get and set thumbnail functions. (Christian Kuster) Changes from version 0.11 to 0.12 --------------------------------- * Exiv2 utility - 0000493: [tools] exiv2 -T DST problem. (Fix suggested by John <johnpcass at yahoo dot com>) - 0000459: [exif] Exiv2 tool: Added a variable for the original filename to the rename option. (Patch by Tobias Jahn) * Exiv2 library - 0000498: [exif] Exiv2 cannot read the Exif data written after deleting all tags. - 0000496: [metadata] Digikam bug 136855: Editing metadata on a few selected imagefiles and clicking forward or apply crashes digikam. (Reported by several digikam users) - 0000495: [exif] Image with corrupted metadata crashes Exiv2. (Reported as digikam bug 136932 by Rainer Krienke) - 0000490: [build environment] PNG support doesn't compile on MinGW/msys. (Reported by Udi Fuchs and Will Stokes) - 0000489: [build environment] exiv2.pc.in includes private/static libs by default. (Reported with patch by Rex Dieter) - 0000488: [metadata] GPSInfo Metadata should return decimal numbers. (Feature requested by Fabien) - 0000486: [build environment] Test bugfixes-test.sh error under Mac OS X x86. (Reported with fix by Max Lapshin) - [exif] Updated Nikon lens info to v2.07 of Robert Rottmerhusen's lens database. - [metadata] Added methods to access built-in read-only Exif taglists and IPTC record lists. (Initiated by Max Lapshin) - [iptc] Improved IPTC record descriptions using IIM4 specification version 4.1. (Gilles Caulier) - [exif] Improved Exif tag descriptions using Exif specification 2.2 and libexif. (Gilles Caulier) - [exif] Added and improved pretty print functions for some Exif tags. (Gilles Caulier) - [exif] Updated Minolta makernote. (Gilles Caulier, Paul Tribick) * MSVC related - 0000487: Crash in exiv2.exe (built with VC++ 2005 Express) when examing TIFF images (Reported with patch by Dimitri Schoolwerth) Changes from version 0.10 to 0.11 --------------------------------- * Exiv2 utility - 0000485: [tools] Weird behaviour when Exif comments contain quotes (Reported by Scott Baker) - Changed exiv2 del command to delete all occurrences of a tag. (Christophe Paris) * Exiv2 library - 0000483: [jpeg i/o] Assertion `sizeIptc' fails when reading metadata from JPEG file. This happened when an image has an empty IPTC IRB. (digikam bug 132582) - 0000482: [exif] SONY DSLR-A100 RAW image crashes Exiv2. (Reported to ufraw by Vishnu Natchu) - 0000480: [iptc] JPEG APP13 (used to store IPTC IRB) can not be larger than 64kB but IRB buffers can. (digikam bug 130525) - 0000479: [exif] JPEGs edited with LightZone crash Exiv2. (Reported by Daniel Hobe) - 0000475: [design] Performance: Don't read TIFF-based files completely, use memory mapping (only on Linux) to read only what is needed. Improves performance by factor 6. - 0000471: [exif] New TIFF parser: Create a CommentValue rather than a DataValue for Exif.Photo.UserComment. (Reported with test program by Marcel Wiesweg) - [exif] New TIFF parser: Extract TIFF thumbnail from IFD1 if there is one. - [exif] Added read support for PNG images (Gilles Caulier) - [exif] Updated Canon makernote tags and decoded additional composite tags, based on Exiftool. Note that some tag names changed. (David Cannings) - [exif] Updated Nikon lens info to v2.02 of Robert Rottmerhusen's lens database. - [exif] Various smaller tag updates (Gilles Caulier, Jim Westveer, Nicolas Vilars, Robert Peter) * MSVC related - 0000455: [build environment] Exiv2 finally works with MSVC 2005. (Thanks to Stephen and Maciej Sakrejda aka Maciek) Changes from version 0.9.1 to 0.10 ---------------------------------- * Exiv2 utility - 0000468: [tools] Added -P option to control what information is displayed in print mode, added -b and -u options to control output of large values and unknown tags. (Better print control suggested by Udi Fuchs) - Display filename in print mode if processing multiple images, like grep does. (Roger Larsson) * Exiv2 library - 0000469: [miscellaneous] MemIo behaviour differs from FILE* and FileIo. (Reported by Dimitri) - 0000462: Support TIFF format, part 1: Read support for TIFF and TIFF-based RAW formats, including NEF, CR2, PEF, SR2, DNG and MRW. - 0000458: [build environment] Support pkg-config tool, removed <prefix>/include/exiv2 path from exiv2-config output. (Suggested by Udi Fuchs) - 0000456: [miscellaneous] Check for 0 pointer before invoking std::string constructor on C-string. - Added Minolta makernote. (Gilles Caulier) - Added support for Exif.Image.Orientation for Canon CRW images. - Improved the print functions for Exif.Nikon[13].AFFocusPos. (Roger Larsson) - Updated some Canon labels and translations (Patrice Boissonneault) - Changed some Nikon tag names. (Based on feedback from Udi Fuchs) - Added EXIV2_CHECK_VERSION macro for applications to check at runtime which version of Exiv2 is installed. * MSVC related Added COM project. (Patrice Boissonneault) Changes from version 0.9 to 0.9.1 --------------------------------- * Exiv2 library - 0000451: [exif] Fixed bug where an invalid Exif tag was created for the user comment, when the tag was newly added to an image. (Thanks to Anatoliy Kovalenko for reporting this bug) - Added enum MetadataId and Image::supportsMetadata() to check what metadata an image class supports. Changed CrwImage to silently ignore calls to Iptc related functions instead of throwing an Error. (Thanks to Will Stokes for suggesting the check feature) - Cleaned up some #include statements (mentioned here because this may lead to unexpected compiler errors). Changes from version 0.8 to 0.9 ------------------------------- * Exiv2 utility - 0000450: [exif] Added action "fixiso" to copy the ISO setting from Nikon Makernotes to the regular Exif tag Exif.Photo.ISOSpeedRatings. - 0000448: [tools] Added options -p and -t, -T to preserve file timestamps and set the timestamp according to the Exif timestamp. (Thanks to Stephan Ahlswede for suggesting the -p feature) - 0000446: [misc] Added option -c to set the JPEG comment to the utility. (Thanks to Tristan Savatier for the suggestion) * Exiv2 library - 0000447: [iptc] Fixed a buffer overflow in sscanf. (Thanks to Maciej Sakrejda aka Maciek for reporting this bug and the hard work to recreate it) - 0000438: [exif] Write support for Canon raw images. - [exif] Updated Nikon lensdata to v2.00 of Robert Rottmerhusen's amazing lens database. (Thanks to Robert for keeping me updated.) - [build environment] Added an option to enable/disable dependency- tracking to the configure script, which is useful to create "Universal Binaries" under Mac OSX. (Thanks to Will Stokes for the suggestion) - [exivsimple] Changed DllTypeId::time and DllTypeId::date to DllTypeId::isoTime and DllTypeId::isoDate to avoid a name clash. Changes from version 0.7 to 0.8 ------------------------------- * Exiv2 utility - [tools] Added -S .suf option to the utility. This allows, e.g, to use Canon THM files as source file for the insert command. - [doc] Added man page. (Based on Peter KELEMEN's Debian man page.) * Exiv2 library - 0000445: [exif] Setting the comment on an image with an existing comment has no effect. - 0000444: [iptc] Exiv2 should not panic on slightly misformed IPTC format. - 0000443: [exif] Exiv2 gives up on corrupted IOP directory. - 0000440: [iptc] IPTC time without timezone raises exception. - 0000438: [exif] Support Canon raw images (CRW and THM), currently read-only. - 0000437: [exif] exiv2 -pt crashes if Exif.Canon.ImageNumber is < 1000. - 0000433: [exif] Core dump if the value is empty. - 0000424: [exif] Ifd::read, MakerNote::read and related methods should have access to the complete data buffer. - [exif] Updated Nikon lensdata to v1.19 of Robert Rottmerhusen's list. - Added a tag and dataset title (label). - Added #ifndef SUPPRESS_WARNINGS blocks around all output from the library: compile with -DSUPPRESS_WARNINGS for a quiet library. - Implemented "copy-on-write" strategy for MemIo to ensure that the original buffer is only copied if necessary and never modified. - Added exiv2-config script. Applications that include exiv2 headers and link with the installed library can use this in their build commands. Changes from version 0.6.2 to 0.7 --------------------------------- * Exiv2 utility - 0000422: [tools] Allow renaming pictures taken within one second. (Reported by jussi AT jjussi DOT com) - 0000423: [tools] Fixed problems with paths and -l option on Windows. - [tools] Improved output data and format of the utility to show the key. * Exiv2 library - 0000404: [design] Insideout design change; made class Exiv2::Image the top-level class of the library. (Brad Schick) - 0000403: [design] Added I/O abstraction and implementations. (Brad Schick) - 0000402: [design] Split image.cpp and hpp files into base class and subclass files. (Brad Schick) - 0000425: [exif] Added default type info to Exif tagtables. - 0000427: [misc] Standardized factories according to the implementation. of ImageFactory (MakerNoteFactory). Linking with mn.o is not necessary anymore. - 0000420: [build environment] Defines should have a library specific prefix, like e.g., EXV_HAVE_CONFIG_H. - 0000417: [exif] ExifData needs proper copy constructor and assignment. - 0000426: [iptc] Fixed problem which prevented Exiv2 from reading IPTC from jpeg files. (Jeffrey J. Early and others) - [feature] Added Olympus, Panasonic and a basic Sony Makernote. (Thanks to Will Stokes for the initial Olympus files) - [feature] Improved Canon and Nikon Makernote support. (Thanks to Robert Rottmerhusen for his Nikon lens info) - [exif] Relaxed checking of Makernote IFD next pointer. - [design] Overhauled exception handling. Changes from version 0.6.1 to 0.6.2 ----------------------------------- * Exiv2 utility - [feature] New -M option to run modification commands directly from the command line. - 0000421: [tools] Command parser fails if no type is specified with a modify command. - 0000416: [exif] Fix Exiv2 modify action to use non-intrusive writing whenever possible. - 0000418: [feature] Add Exiv2 option to specify path of extracted. and inserted files. (Suggested by Brian Pugh) * Exiv2 library - 0000408: [build environment] 0.6.1 does not build on OS X: Add libtool support for automatic library creation (see README). (Reported by Thomas Lunde and others) - 0000409: [build environment] compiling emits type warnings. (Thomas Lunde and others) - 0000410: [build environment] config.h must be installed, -DHAVE_CONFIG_H flag should not be necessary. (Daniel Foote and others) - 0000411: [exif] Support non-standard Ifd layout. (Jeffrey J. Early) Changes from version 0.6 to 0.6.1 --------------------------------- * Exiv2 utility * Added option to modify Iptc and Exif metadata based on a command file * Exiv2 library * Fixed bug #407: Writing metadata to image after modifications may lose thumbnail. Thanks to Jeffrey J. Early for pointing out this bug. * Added CommentValue Changes from version 0.5 to 0.6 ------------------------------- * Exiv2 utility * Added options to extract, insert and delete different types of metadata * Added option to print the Jpeg comment * Changed semantics of print option `i' to Iptc (`t' for translated Exif data) * Replaced std::cout << "\n" with std::endl to flush and get the sequence with error output right * Exiv2 library * Added support to build Makernotes from scratch * Added support to build IFD1 (Thumbnail) entries from scratch * Open image files on demand rather than keeping them open. Bug #393 (Brad) * Added data area concept to Value, ValueType, Entry, Ifd. Feature #395 * Revamped Thumbnail classes to use the new data area feature. Feature #398 * Added ExifData::setJpegThumbnail * Improved implementation of Exif and Iptc keys, added support for keys with unknown tag names * Added ExifData::op[] and Exifdatum op= and similar operators to IptcData and Iptcdatum. This operator stuff allows for things like: exifData["Exif.Thumbnail.Compression"] = uint16_t(6); * Converted class hierarchies to use std::auto_ptr where appropriate * Replaced custom integer types with C99 types * Added test data and drivers to the repository * Right align output stream for date and time writes. Bug #397 (Brad) * Updated documentation * MSVC related (Thanks to Brad Schick) * Added exivsimple: a Windows dll that allows languages such as C# and VB to access limited metadata capabilities (Brad) * Added and write2-test projects to MSVC build (Brad) * Added mn.cpp to all MSVC projects. Fixes bug #396 (Brad) * Fixed various MSVC 7.1 build errors. Bug #394 (Brad) * Added write-test to MSVC build project (Brad) Changes from version 0.4 to 0.5 ------------------------------- * Exiv2 utility * Added -pI print mode to print Iptc data. * Bugfix: Use timegm() and gmtime() instead of mktime() and localtime() to avoid problems when adjusting timestamps. Thanks to Samir Rostum for pointing out this bug. * Added timegm() from the tz distribution for platforms which do not have this function. * Exiv2 library * Added full Iptc read and write support. Thanks to Brad Schick for this and a lot more contributions to this release. * Converted Metadatum to an abstract base class, added Exifdatum and Iptcdatum classes. Migration of existing programs: Use class Exifdatum instead of Metadatum. (Brad Schick) * Added Key, ExifKey and IptcKey class hierarchy. Requires changes to existing pograms: Use class ExifKey where plain std::string keys were used before (e.g., ExifData::findKey()). * Changed Exif keys to 'Exif.ifdItem.tagName' to be consistent with the new Iptc keys. All keys of existing programs need to be updated. See the web pages or documentation for the new keys. * Revamped class Image and introduced byte* interface. (Brad Schick) * Added autoconf configure script. * Added MSVC project files. (Brad Schick) * Appended 'Id' to Ifd ids to work around a g++-3.4 problem. * Updated documentation. Changes from version 0.3 to 0.4 ------------------------------- * Exiv2 utility * Less rigid command line argument parsing: Guess the action from the option given and use print as the default action. * Print Nikon makernote values for ISO Speed, Quality and WhiteBalance in the summary. * Exiv2 library * Fixed ExifData::copyFromMetadata to automatically add missing offset tags. Thanks to Joseph Heled for identifying this bug. * Started to fix MSVC errors and warnings. Thanks to Steven R. King for his work to get Exiv2 to compile on MSVC. The task is not yet completed but the library should compile without too many warnings. * Added three different Nikon makernote formats. * IfdMakerNote: Replaced too simple prefix with a more general concept of a makernote header. * Added the makernote buffer to the arguments passed to the makernote create function. This allows the makernote create function to determine the exact makernote needed based on its content. The new concept is used to automatically determine which of the three Nikon makernotes to create. * Fixed MakerNoteFactory::match() to prefer an exact match over a wildcard match with the same number of matching characters (Key "Nikon" now prefers registry entry "Nikon" over "Nikon*"), simplified the return value of match() to an integer score value. * Sigma makernote: Added "FOVEON" and "*" to registry. * Added len argument and boundary checks to various read functions, in particular, the IFD read method. * Improved handling of corrupt IFDs: Truncate field if offset points outside of the available buffer. * Slightly improved error handling: strError() is now a static member of ExifData. * Added exifcomment example program. * Fixed an embarrassing bug in ExifData::updateEntries, which caused write after erasing metadata to write back the original metadata. * Fixed TypeInfoTable to return invalid if typeId is too large. * Makefile: (un)install targets now only (un)install exiv2. * Code cleanup, documentation updates and miscellaneous bug fixes.