+2016-09-01 Dan Fandrich <dan@coneharvesters.com>
+ * po/sv.po: Updated Swedish translation by Sebastian Rasmussen
+ * Updated many translations from launchpad.net
+ * Added new translation from launchpad.net's "yakkety" translations:
+ * po/ms.po: Added Malay translation by abuyop
+
+2014-01-05 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/es.po: Updated Spanish translation by Antonio Ceballos
+
+2013-07-13 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed a C89 compatibility issue (bug #117 reported by
+ Guenter Knauf)
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/de.po: Updated German translation by Christian Kirbach
+ * po/fr.po: Updated French translation by Frédéric Marchal
+ * po/uk.po: Updated Ukrainian translation by Yuri Chornoivan
+
+2013-02-23 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/pl.po: Updated Polish translation by Jakub Bogusz
+
+2012-07-12 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed some buffer overflows in exif_entry_format_value()
+ This fixes CVE-2012-2814. Reported by Mateusz Jurczyk of
+ Google Security Team
+ * Fixed an off-by-one error in exif_convert_utf16_to_utf8()
+ This can cause a one-byte NUL write past the end of the buffer.
+ This fixes CVE-2012-2840
+ * Don't read past the end of a tag when converting from UTF-16
+ This fixes CVE-2012-2813. Reported by Mateusz Jurczyk of
+ Google Security Team
+ * Fixed an out of bounds read on corrupted input
+ The EXIF_TAG_COPYRIGHT tag ought to be, but perhaps is not,
+ NUL-terminated.
+ This fixes CVE-2012-2812. Reported by Mateusz Jurczyk of
+ Google Security Team
+ * Fixed a buffer overflow problem in exif_entry_get_value
+ If the application passed in a buffer length of 0, then it would
+ be treated as the buffer had unlimited length.
+ This fixes CVE-2012-2841
+ * Fix a buffer overflow on corrupt EXIF data.
+ This fixes bug #3434540 and fixes part of CVE-2012-2836
+ Reported by Yunho Kim
+ * Fix a buffer overflow on corrupted JPEG data
+ An unsigned data length might wrap around when decremented
+ below zero, bypassing sanity checks on length.
+ This code path can probably only occur if exif_data_load_data()
+ is called directly by the application on data that wasn't parsed
+ by libexif itself.
+ This solves the other part of CVE-2012-2836
+ * Fixed some possible division-by-zeros in Olympus-style makernotes
+ This fixes bug #3434545, a.k.a. CVE-2012-2837
+ Reported by Yunho Kim
+ * Released 0.6.21
+
+2012-07-09 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/de.po: Updated German translation by Christian Kirbach
+ * po/pl.po: Updated Polish translation by Jakub Bogusz
+ * po/sk.po: Updated Slovak translation by Ivan Masár
+ * po/uk.po: Updated Ukrainian translation by Yuri Chornoivan
+ * po/vi.po: Updated Vietnamese translation by Trần Ngọc Quân
+ * Mention that uk.po must now be updated through translationproject.org
+
+2012-06-25 Dan Fandrich <dan@coneharvesters.com>
+
+ * Updated non-TP translations from launchpad.net's "precise"
+ translations:
+ be.po bs.po en_GB.po pt.po pt_BR.po ru.po sq.po sr.po tr.po zh_CN.po
+ * Added new translations from launchpad.net's "precise" translations:
+ * po/en_AU.po: Added English (Australian) translation by Joel Pickett
+ * po/uk.po: Added Ukrainian translation by Yuri Chornoivan
+ * po/bs.po: Removed some erroneous embedded \r\n in the translations
+ * Updated non-TP translations to the latest strings in the source code
+ * po/en_CA.po: Updated Canadian English translation
+
+2012-05-16 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/vi.po: Updated Vietnamese translation by Trần Ngọc Quân
+
+2011-11-07 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/de.po: Updated German translation by Christian Kirbach
+
+2011-08-26 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/cs.po: Updated Czech translation by Jan Patera
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/nl.po: Updated Dutch translation by Erwin Poeze
+ * po/pl.po: Updated Polish translation by Jakub Bogusz
+ * po/sk.po: Updated Slovak translation by Ivan Masár
+ * po/sv.po: Updated Swedish translation by Daniel Nylander
+
+2011-07-11 Dan Fandrich <dan@coneharvesters.com>
+
+ * Made mnote_fuji_tag_get_description and
+ mnote_canon_tag_get_descripton more robust should any NULL
+ descriptions be added to the table (bug #3307219)
+
+2011-05-12 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added more Canon lenses (from Adrian von Bidder and drochner)
+
+2011-02-16 Dan Fandrich <dan@coneharvesters.com>
+
+ * Changed "knots" to more clear "nautical miles" (Ubuntu Launchpad bug
+ https://bugs.launchpad.net/bugs/712115 reported by Daniel Thibault).
+
+2010-12-15 Dan Fandrich <dan@coneharvesters.com>
+
+ * Released 0.6.20
+
+2010-12-13 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * Updated non-TP translations from launchpad.net:
+ be.po en_GB.po pt_BR.po pt.po ru.po sq.po sr.po zh_CN.po
+ * po/bs.po: Added Bosnian translation from launchpad.net
+ * po/tr.po: Added Turkish translation from launchpad.net
+
+2010-12-10 Dan Fandrich <dan@coneharvesters.com>
+
+ * Changed the display of rational numbers to estimate the number of
+ significant figures (based on the size of the denominator) and show
+ that number of decimal places. This simplifies the output in the
+ case of integers (e.g. resolution), and shows all the available
+ accuracy in the case of rationals (e.g. latitude & longitude).
+
+2010-10-14 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed some invalid format specifiers and typecasts. This caused a
+ problem on mingw32, at least.
+
+2010-10-07 Dan Fandrich <dan@coneharvesters.com>
+
+ * Refactored MakerNote detection code to put detection of each type
+ into the module handling that type
+
+2010-09-23 Dan Fandrich <dan@coneharvesters.com>
+
+ * exif_entry_dump() now displays the correct tag name for GPS tags by
+ taking the IFD into account when looking up the name. Fixes
+ bug #3073307.
+
+2010-08-11 Dan Fandrich <dan@coneharvesters.com>
+
+ * Removed redundant sentence. Fixes Ubuntu bug #197306
+
+2010-07-23 Dan Fandrich <dan@coneharvesters.com>
+
+ * Canon EOS 5D Mark II writes Aperture values as invalid values
+ 0x80000000/1 which makes pow() throw floating-point exceptions
+
+2010-06-16 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/it.po: Updated Italian translation by Sergio Zanchetta
+ * po/nl.po: Updated Dutch translation by Erwin Poeze
+
+2010-02-18 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/de.po: Updated German translation by Marcus Meissner
+ * po/ja.po: Updated Japanese translation by Tadashi Jokagi
+ * po/pl.po: Updated Polish translation by Jakub Bogusz
+ * po/vi.po: Updated Vietnamese translation by Clytie Siddall
+ * po/en_CA.po: Updated Canadian English translation
+
+2010-02-05 Dan Fandrich <dan@coneharvesters.com>
+
+ * Made the case of text output be more consistent. Now, tag titles
+ have each word capitalized (like a title) and tag values
+ are always lower case, except the first word which is capitalized
+ (more like a sentence).
+
+2010-01-25 Dan Fandrich <dan@coneharvesters.com>
+
+ * configure.ac: Turned on the --enable-silent-rules configure option
+
+2009-12-30 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+ * po/sk.po: Updated Slovak translation by Ivan Masár
+ * po/sv.po: Updated Swedish translation by Daniel Nylander
+
+2009-12-17 Dan Fandrich <dan@coneharvesters.com>
+
+ * Don't warn "No thumbnail but entries on thumbnail." unless
+ there actually are entries.
+
+2009-12-15 Dan Fandrich <dan@coneharvesters.com>
+
+ * libexif.pc.in: Move -lm flag into Libs.private since it's only
+ needed when statically linking. A future enhancement would be to
+ make even this dependent on the check for -lm done in configure.
+
+2009-12-11 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added tag 0xEA1C, the Padding tag from the Microsoft HD Photo
+ specification.
+
+2009-12-08 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed some memory leaks in the write-exif.c example program and
+ added some examples of allocating a new tag.
+
+2009-11-27 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/ja.po: Updated Japanese translation by Tadashi Jokagi
+
+2009-11-25 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+
+2009-11-23 Dan Fandrich <dan@coneharvesters.com>
+
+ * Include README-Win32.txt in all source distributions
+
+2009-11-16 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/ja.po: Updated Japanese translation by Tadashi Jokagi
+
+2009-11-12 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed a heap buffer overflow during tag format conversion.
+ * Released 0.6.19
+
+2009-11-07 Dan Fandrich <dan@coneharvesters.com>
+
+ * Sorted ExifFormatTable[] in approximate decreasing order of
+ popularity to decrease the total average lookup time.
+
+2009-11-05 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added a bunch of new translations from launchpad.net
+ * po/be.po: Added Belarusian translation by Iryna Nikanchuk
+ * po/en_GB.po: Added English (United Kingdom) translation by Bruce
+ Cowan
+ * po/it.po: Added Italian translation by Sergio Zanchetta
+ * po/ja.po: Added Japanese translation by Shushi Kurose
+ * po/pt.po: Added Portuguese translation by nglnx
+ * po/sq.po: Added Albanian translation by Vilson Gjeci
+ * po/zh_CN.po: Added Chinese (simplified) translation by Tao Wei
+
+2009-11-03 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Updated Danish translation by Joe Hansen
+
+2009-10-27 Dan Fandrich <dan@coneharvesters.com>
+
+ * Improved tag table lookup performance by optimally ordering IFD
+ search and aborting searches early if the tag is not found.
+
+2009-10-14 Dan Fandrich <dan@coneharvesters.com>
+
+ * Changed the various functions searching for tags in ExifTagTable[]
+ to use a binary search. This single change increases the speed of
+ a run through the libexif-testsuite by 7%
+
+2009-10-13 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/sv.po: Updated Swedish translation by Daniel Nylander
+ * po/vi.po: Updated Vietnamese translation by Clytie Siddall
+ * Fixed an inverted logic condition that prevented the bug
+ report address from appearing in the .pot file
+ * Ensure that ExifTagTable[] is sorted by tag to allow for future
+ more efficient searching.
+
+2009-10-09 Dan Fandrich <dan@coneharvesters.com>
+
+ * Released 0.6.18
+
+2009-10-09 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/sr.po: Added Serbian translation by Marko Uskokovic
+ * po/pt_BR.po: Added Portuguese (Brazil) translation by André Gondi
+
+2009-10-08 Dan Fandrich <dan@coneharvesters.com>
+
+ * Demoted from EXIF_LOG_CODE_CORRUPT_DATA to EXIF_LOG_CODE_DEBUG the
+ MakerNote log messages that would result if a MakerNote were
+ rewritten by an application without rebasing the internal data
+ offsets. The exif front end (at least) aborts processing if
+ such a log message is found, but these kinds of errors are
+ far too common (and practically unavoidable) to handle them
+ this way.
+
+2009-10-06 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added --enable-maintainer-mode in configure and made the SourceForge
+ logo appear in the Doxygen documentation only when it's enabled.
+
+2009-10-05 Dan Fandrich <dan@coneharvesters.com>
+
+ * Updated translations from Translation Project members to the
+ latest & hopefully final .pot file before release
+
+2009-10-01 Dan Fandrich <dan@coneharvesters.com>
+
+ * Bumped the library minor version number because of the addition
+ of exif_loader_get_buf()
+ * Added exif.h to the source tarball so users can generate full
+ Doxygen documentation.
+
+2009-09-30 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added a new public API function, exif_loader_get_buf(), which
+ returns a pointer to the raw data in the ExifLoader. Without this,
+ the only way to get the ExifLoader data out was as an
+ ExifData and using only the default set of ExifDataOptions.
+
+2009-09-29 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added EXIF_DATA_TYPE_UNKNOWN as a backwards-compatible
+ replacement for most uses of EXIF_DATA_TYPE_COUNT since that's
+ a clearer name for how it's being used.
+
+2009-09-26 Dan Fandrich <dan@coneharvesters.com>
+
+ * libexif/exif-data.c: Added more error log messages and improved
+ a few data boundary checks.
+ * Sped up exif_content_fix() considerably by splitting the one giant
+ loop into two much smaller & faster loops.
+
+2009-09-24 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed some problems in MakerNote parsing that could cause a
+ read past the end of a buffer and therefore a segfault.
+ * Allow MakerNote parsing to continue even if one tag parses
+ incorrectly.
+ * Log an error whenever memory allocation fails in MakerNote parsing.
+
+2009-09-23 Dan Fandrich <dan@coneharvesters.com>
+
+ * Removed bogus "APEX" value from shutter speed display (thanks to
+ Jef Driesen for confirming this)
+ * Fixed a couple of off-by-one unnecessary string truncations
+ * Define M_PI for those systems that don't have it
+
+2009-09-23 Jan Patera <patera@users.sourceforge.net>
+
+ * po/cs.po: Updated Czech translation by Jan Patera
+
+2009-09-18 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added support for writing Pentax and Casio v2 MakerNotes
+ * Now displaying all components in Pentax and Casio v2 MakerNotes
+ when a tag has more than one
+
+2009-09-18 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/de.po: Updated German translation by Marcus Meissner
+ * po/sv.po: Updated Swedish translation by Daniel Nylander
+ * po/vi.po: Updated Vietnamese translation by Clytie Siddall
+
+2009-09-17 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/pl.po: Updated Polish translation by Jakub Bogusz
+
+2009-09-16 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/en_CA.po: Updated Canadian English translation
+
+2009-08-12 Lutz Mueller <lutz@users.sourceforge.com>
+
+ Patch by Vladimir Petrov <vppetrov@mm-sol.com> plus some whitespace
+ fixes by myself:
+
+ * libexif/exif-entry.c: (exif_entry_[fix,get_value,initialize]):
+ Support EXIF_TAG_ISO_SPEED_RATINGS.
+
+2009-06-15 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Danish translation corrections by Lars Christian Jensen
+
+2009-06-03 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/da.po: Added Danish translation by Joe Hansen
+
+2009-05-28 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fixed negative exposure values in Canon makernotes (bug #2797280)
+
+2009-05-02 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added contrib/examples/write-exif.c
+ * Create a valid default for EXIF_TAG_COMPONENTS_CONFIGURATION
+
+2009-03-21 Lutz Mueller <lutz@users.sourceforge.net>
+
+ Meder Kydyraliev <meder.k@gmail.com> suggested to add some sanity
+ checks:
+
+ * libexif/exif-data.c (exif_data_load_entry),
+ (exif_data_load_data_thumbnail)
+ * libexif/canon/exif_mnote-data-canon.c
+ (exif_mnote_data_canon_load)
+ * libexif/fuji/exif-mnote-data-fuji.c
+ (exif_mnote_data_fuji_load)
+ * libexif/olympus/exif-mnote-data-olympus.c
+ (exif_mnote_data_olympus_load)
+ * libexif/pentax/exif-mnote-data-pentax.c
+ (exif_mnote_data_pentax_load)
+
+2009-03-16 Lutz Mueller <lutz@users.sourceforge.net>
+
+ * libexif/canon/exif-mnote-data-canon.c:
+ (exif_mnote_data_canon_load): Fix the coding style in this function
+ to make it easier to read.
+
+2009-02-02 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added AC_C_INLINE to configure.ac to define the inline keyword
+ if the compiler doesn't handle it already.
+
+2009-01-28 Dan Fandrich <dan@coneharvesters.com>
+
+ * Decode the value for EXIF_TAG_LIGHT_SOURCE and EXIF_TAG_SCENE_TYPE
+ * Split out the generic ExifEntry formatting code into a new function
+ exif_entry_format_value()
+ * Fixed some signed vs unsigned formatting errors
+ * Format the EXIF_TAG_GPS_TIME_STAMP & EXIF_TAG_GPS_ALTITUDE_REF tags
+ * Improved the wrong data type fixup
+ * Separated the MNOTE_SANYO_TAG_SELFTIMER 2 sec. case from the other
+ On/Off cases
+ * Renamed MNOTE_NIKON_TAG_PREVIEWIMAGE_IFD_POINTERS to show that it's
+ an IFD. The case of IFDs in MakerNotes needs to be handled better
+ because right now, those MakerNote IFD tags are corrupted since
+ the sub-IFDs aren't being read and written.
+
+2009-01-22 Dan Fandrich <dan@coneharvesters.com>
+
+ * Fix exif_tag_get_support_level_in_ifd() to handle the case where two
+ tags with the same number exist in different IFDs.
+ * Added test-tagtable to do some tests on the static EXIF tag
+ information table.
+
+2009-01-21 Dan Fandrich <dan@coneharvesters.com>
+
+ * libexif/exif-entry.c: Initialize the default for EXIF_TAG_COLOR_SPACE
+ to "Uncalibrated"
+ * libexif/exif-data.c: Reduce the recursion limit
+ * When the data type is not known in exif_tag_get_support_level_in_ifd
+ check the support level for all data types and if it's all the same,
+ return that. This means that fixing a new EXIF tag block will
+ actually create some tags in it now.
+
+2009-01-15 Dan Fandrich <dan@coneharvesters.com>
+
+ * Interpret more Sanyo MakerNote tags
+
+2009-01-12 Dan Fandrich <dan@coneharvesters.com>
+
+ * Added support for Epson MakerNotes, which have the identical
+ tag format and namespace of the Olympus ones.
+
+2009-01-06 Dan Fandrich <dan@coneharvesters.com>
+
+ * libexif/exif-tags.c: Added remaining GPS tags from the EXIF 2.2
+ spec to the tag table.
+
+2009-01-03 Dan Fandrich <dan@coneharvesters.com>
+
+ * contrib/examples/photographer.c: Added example program to show how
+ to display EXIF and MakerNote tags
+
+2008-12-22 Dan Fandrich <dan@coneharvesters.com>
+
+ * po/vi.po: Updated Vietnamese translation by Clytie Siddall
+ * Fixed bug #1946138 to stop ignoring CFLAGS in the sqrt configure test
+