Hello community, here is the log from the commit of package libgexiv2 for openSUSE:Factory checked in at 2018-02-12 10:10:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libgexiv2 (Old) and /work/SRC/openSUSE:Factory/.libgexiv2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libgexiv2" Mon Feb 12 10:10:19 2018 rev:32 rq:574228 version:0.10.8 Changes: -------- --- /work/SRC/openSUSE:Factory/libgexiv2/libgexiv2.changes 2018-02-07 18:38:25.468583152 +0100 +++ /work/SRC/openSUSE:Factory/.libgexiv2.new/libgexiv2.changes 2018-02-12 10:10:22.403973902 +0100 @@ -1,0 +2,9 @@ +Tue Feb 6 20:48:05 UTC 2018 - [email protected] + +- Update to version 0.10.8: + + Do not use linker scripts on Drawin/OS X. + + Fallback to AperturValue if FNumber is absent. + + Fix GIR header and vapi when using meson. + + Bugs fixed: bgo#791941, bgo#792239, bgo#792431. + +------------------------------------------------------------------- Old: ---- gexiv2-0.10.7.tar.xz New: ---- gexiv2-0.10.8.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libgexiv2.spec ++++++ --- /var/tmp/diff_new_pack.NzI50j/_old 2018-02-12 10:10:23.559932244 +0100 +++ /var/tmp/diff_new_pack.NzI50j/_new 2018-02-12 10:10:23.563932099 +0100 @@ -21,7 +21,7 @@ %bcond_without python2 %bcond_without python3 Name: libgexiv2 -Version: 0.10.7 +Version: 0.10.8 Release: 0 Summary: A GObject-based Exiv2 wrapper License: GPL-2.0+ ++++++ gexiv2-0.10.7.tar.xz -> gexiv2-0.10.8.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/Makefile.am new/gexiv2-0.10.8/Makefile.am --- old/gexiv2-0.10.7/Makefile.am 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/Makefile.am 2018-02-05 22:56:47.000000000 +0100 @@ -34,6 +34,7 @@ test/data/sample-author-badencoding.jpg \ test/data/original.jpg \ test/data/CaorVN.jpeg \ + test/data/no-fnumber.jpg \ test/gexiv2-dump.vala \ test/python/gexiv2.py \ test/python/test_metadata.py \ @@ -152,9 +153,15 @@ lib@PACKAGE_NAME@_la_LIBADD = $(EXIV2_LIBS) $(GLIB_LIBS) lib@PACKAGE_NAME@_la_CPPFLAGS = $(EXIV2_CFLAGS) $(GLIB_CFLAGS) +if PLATFORM_DARWIN +VERSION_SCRIPT_LDFLAGS= +else +VERSION_SCRIPT_LDFLAGS="-Wl,--version-script=$(srcdir)/gexiv2/gexiv2.map" +endif + lib@PACKAGE_NAME@_la_LDFLAGS = \ $(no_undefined) -export-dynamic -version-info $(GEXIV2_VERSION_INFO) \ - -Wl,--version-script=$(srcdir)/gexiv2/gexiv2.map \ + $(VERSION_SCRIPT_LDFLAGS) \ $(WARN_LDFLAGS) clean-local: @@ -177,6 +184,7 @@ --symbol-prefix=@PACKAGE_NAME@ \ --add-include-path=$(BUILD_DIR) \ --pkg-export=gexiv2 \ + --c-include=gexiv2/gexiv2.h \ $(WARN_SCANNERFLAGS) INTROSPECTION_COMPILER_ARGS = --includedir=$(BUILD_DIR) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/Makefile.in new/gexiv2-0.10.8/Makefile.in --- old/gexiv2-0.10.7/Makefile.in 2017-12-24 12:44:25.000000000 +0100 +++ new/gexiv2-0.10.8/Makefile.in 2018-02-05 22:57:54.000000000 +0100 @@ -738,9 +738,10 @@ EXTRA_DIST = @[email protected] GExiv2.py gexiv2/gexiv2-version.m4 \ $(TYPELIB_FILES) test/data/sample-author-badencoding.jpg \ test/data/original.jpg test/data/CaorVN.jpeg \ - test/gexiv2-dump.vala test/python/gexiv2.py \ - test/python/test_metadata.py docs/meson.build \ - docs/reference/meson.build docs/reference/xml/meson.build \ + test/data/no-fnumber.jpg test/gexiv2-dump.vala \ + test/python/gexiv2.py test/python/test_metadata.py \ + docs/meson.build docs/reference/meson.build \ + docs/reference/xml/meson.build \ docs/reference/xml/gtkdocentities.ent.in meson.build \ gexiv2/meson.build gexiv2/gexiv2-enums.cpp.template \ gexiv2/gexiv2-enums.h.template gexiv2/gexiv2-version.h.meson \ @@ -802,9 +803,11 @@ lib@PACKAGE_NAME@_la_SOURCES = $(GEXIV2_sources) $(GEXIV2_public_HEADERS) lib@PACKAGE_NAME@_la_LIBADD = $(EXIV2_LIBS) $(GLIB_LIBS) lib@PACKAGE_NAME@_la_CPPFLAGS = $(EXIV2_CFLAGS) $(GLIB_CFLAGS) +@PLATFORM_DARWIN_FALSE@VERSION_SCRIPT_LDFLAGS = "-Wl,--version-script=$(srcdir)/gexiv2/gexiv2.map" +@PLATFORM_DARWIN_TRUE@VERSION_SCRIPT_LDFLAGS = lib@PACKAGE_NAME@_la_LDFLAGS = \ $(no_undefined) -export-dynamic -version-info $(GEXIV2_VERSION_INFO) \ - -Wl,--version-script=$(srcdir)/gexiv2/gexiv2.map \ + $(VERSION_SCRIPT_LDFLAGS) \ $(WARN_LDFLAGS) TESTS_ENVIRONMENT = \ @@ -835,6 +838,7 @@ @HAVE_INTROSPECTION_TRUE@ --symbol-prefix=@PACKAGE_NAME@ \ @HAVE_INTROSPECTION_TRUE@ --add-include-path=$(BUILD_DIR) \ @HAVE_INTROSPECTION_TRUE@ --pkg-export=gexiv2 \ +@HAVE_INTROSPECTION_TRUE@ --c-include=gexiv2/gexiv2.h \ @HAVE_INTROSPECTION_TRUE@ $(WARN_SCANNERFLAGS) @HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(BUILD_DIR) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/NEWS new/gexiv2-0.10.8/NEWS --- old/gexiv2-0.10.7/NEWS 2017-12-24 12:39:40.000000000 +0100 +++ new/gexiv2-0.10.8/NEWS 2018-02-05 22:56:47.000000000 +0100 @@ -1,11 +1,27 @@ +gexiv2 0.10.8 - 5 Feb 2018 + + * Do not use linker scripts on Drawin/OS X + * Fallback to AperturValue if FNumber is absent + * Fix GIR header and vapi when using meson + +Bugs fixed in this release: + - https://bugzilla.gnome.org/show_bug.cgi?id=791941 + - https://bugzilla.gnome.org/show_bug.cgi?id=792239 + - https://bugzilla.gnome.org/show_bug.cgi?id=792431 + +All contributors to this release: + - Jens Georg <[email protected]> + - Debarshi Ray <[email protected]> + - Corentin Noël <[email protected]> + gexiv2 0.10.7 - 24 Dec 2017 - - Add meson build support - - Use glib-mkenums for enum types - - Update debian - - Fix make check when running out of tree - - Use version script to clean up exported functions - - Fix --disable-vala + * Add meson build support + * Use glib-mkenums for enum types + * Update debian + * Fix make check when running out of tree + * Use version script to clean up exported functions + * Fix --disable-vala Bugs fixed in this release: - https://bugzilla.gnome.org/show_bug.cgi?id=784045 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/configure new/gexiv2-0.10.8/configure --- old/gexiv2-0.10.7/configure 2017-12-24 12:44:24.000000000 +0100 +++ new/gexiv2-0.10.8/configure 2018-02-05 22:57:53.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for gexiv2 0.10.7. +# Generated by GNU Autoconf 2.69 for gexiv2 0.10.8. # # Report bugs to <https://bugzilla.gnome.org/enter_bug.cgi?product=gexiv2>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='gexiv2' PACKAGE_TARNAME='gexiv2' -PACKAGE_VERSION='0.10.7' -PACKAGE_STRING='gexiv2 0.10.7' +PACKAGE_VERSION='0.10.8' +PACKAGE_STRING='gexiv2 0.10.8' PACKAGE_BUGREPORT='https://bugzilla.gnome.org/enter_bug.cgi?product=gexiv2' PACKAGE_URL='https://wiki.gnome.org/Projects/gexiv2' @@ -663,6 +663,8 @@ VAPIGEN PLATFORM_WIN32_FALSE PLATFORM_WIN32_TRUE +PLATFORM_DARWIN_FALSE +PLATFORM_DARWIN_TRUE HAVE_VALAC_FALSE HAVE_VALAC_TRUE VALAC @@ -1432,7 +1434,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gexiv2 0.10.7 to adapt to many kinds of systems. +\`configure' configures gexiv2 0.10.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1503,7 +1505,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gexiv2 0.10.7:";; + short | recursive ) echo "Configuration of gexiv2 0.10.8:";; esac cat <<\_ACEOF @@ -1648,7 +1650,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gexiv2 configure 0.10.7 +gexiv2 configure 0.10.8 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2047,7 +2049,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gexiv2 $as_me 0.10.7, which was +It was created by gexiv2 $as_me 0.10.8, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2915,7 +2917,7 @@ # Define the identity of the package. PACKAGE='gexiv2' - VERSION='0.10.7' + VERSION='0.10.8' # Some tools Automake needs. @@ -16638,8 +16640,8 @@ GEXIV2_MAJOR_VERSION=0 GEXIV2_MINOR_VERSION=10 -GEXIV2_MICRO_VERSION=6 -GEXIV2_VERSION=0.10.6 +GEXIV2_MICRO_VERSION=8 +GEXIV2_VERSION=0.10.8 @@ -18621,6 +18623,32 @@ # Check for Win32 ################# +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking OS X platform" >&5 +$as_echo_n "checking OS X platform... " >&6; } +case "$target_or_host" in + *-*-darwin*) + platform_darwin=yes + ;; + *) + platform_darwin=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $platform_darwin" >&5 +$as_echo "$platform_darwin" >&6; } + if test "$platform_win32" = "yes"; then + PLATFORM_DARWIN_TRUE= + PLATFORM_DARWIN_FALSE='#' +else + PLATFORM_DARWIN_TRUE='#' + PLATFORM_DARWIN_FALSE= +fi + + + +################# +# Check for Win32 +################# + { $as_echo "$as_me:${as_lineno-$LINENO}: checking Win32 platform" >&5 $as_echo_n "checking Win32 platform... " >&6; } case "$target_or_host" in @@ -19505,6 +19533,10 @@ as_fn_error $? "conditional \"HAVE_VALAC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${PLATFORM_DARWIN_TRUE}" && test -z "${PLATFORM_DARWIN_FALSE}"; then + as_fn_error $? "conditional \"PLATFORM_DARWIN\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${PLATFORM_WIN32_TRUE}" && test -z "${PLATFORM_WIN32_FALSE}"; then as_fn_error $? "conditional \"PLATFORM_WIN32\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -19934,7 +19966,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gexiv2 $as_me 0.10.7, which was +This file was extended by gexiv2 $as_me 0.10.8, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -19992,7 +20024,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gexiv2 config.status 0.10.7 +gexiv2 config.status 0.10.8 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/configure.ac new/gexiv2-0.10.8/configure.ac --- old/gexiv2-0.10.7/configure.ac 2017-12-24 12:37:31.000000000 +0100 +++ new/gexiv2-0.10.8/configure.ac 2018-02-05 22:56:47.000000000 +0100 @@ -1,5 +1,5 @@ AC_INIT([gexiv2], - [0.10.7], + [0.10.8], [https://bugzilla.gnome.org/enter_bug.cgi?product=gexiv2], [gexiv2], [https://wiki.gnome.org/Projects/gexiv2]) @@ -29,7 +29,7 @@ m4_define([gexiv2_major_version], [0]) m4_define([gexiv2_minor_version], [10]) -m4_define([gexiv2_micro_version], [6]) +m4_define([gexiv2_micro_version], [8]) m4_define([gexiv2_real_version], [gexiv2_major_version.gexiv2_minor_version.gexiv2_micro_version]) m4_define([gexiv2_version], [gexiv2_real_version]) @@ -208,6 +208,23 @@ ################# # Check for Win32 +################# + +AC_MSG_CHECKING([OS X platform]) +case "$target_or_host" in + *-*-darwin*) + platform_darwin=yes + ;; + *) + platform_darwin=no + ;; +esac +AC_MSG_RESULT([$platform_darwin]) +AM_CONDITIONAL(PLATFORM_DARWIN, test "$platform_win32" = "yes") + + +################# +# Check for Win32 ################# AC_MSG_CHECKING([Win32 platform]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/docs/reference/html/GExiv2Metadata.html new/gexiv2-0.10.8/docs/reference/html/GExiv2Metadata.html --- old/gexiv2-0.10.7/docs/reference/html/GExiv2Metadata.html 2017-12-24 12:45:08.000000000 +0100 +++ new/gexiv2-0.10.8/docs/reference/html/GExiv2Metadata.html 2018-02-05 22:59:17.000000000 +0100 @@ -2733,7 +2733,9 @@ <a name="gexiv2-metadata-get-fnumber"></a><h3>gexiv2_metadata_get_fnumber ()</h3> <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gdouble"><span class="returnvalue">gdouble</span></a> gexiv2_metadata_get_fnumber (<em class="parameter"><code><a class="link" href="GExiv2Metadata.html" title="GExiv2Metadata"><span class="type">GExiv2Metadata</span></a> *self</code></em>);</pre> -<p>See <a class="ulink" href="https://en.wikipedia.org/wiki/F-number" target="_top">https://en.wikipedia.org/wiki/F-number</a> for more information.</p> +<p>See <a class="ulink" href="https://en.wikipedia.org/wiki/F-number" target="_top">https://en.wikipedia.org/wiki/F-number</a> for more information. +If Exif.Photo.FNumber does not exist, it will fall back to calculating the FNumber from +Exif.Photo.ApertureValue (if available);</p> <div class="refsect3"> <a name="gexiv2-metadata-get-fnumber.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/docs/reference/html/gexiv2-gexiv2-version.html new/gexiv2-0.10.8/docs/reference/html/gexiv2-gexiv2-version.html --- old/gexiv2-0.10.7/docs/reference/html/gexiv2-gexiv2-version.html 2017-12-24 12:45:08.000000000 +0100 +++ new/gexiv2-0.10.8/docs/reference/html/gexiv2-gexiv2-version.html 2018-02-05 22:59:17.000000000 +0100 @@ -149,7 +149,7 @@ <hr> <div class="refsect2"> <a name="GEXIV2-MICRO-VERSION:CAPS"></a><h3>GEXIV2_MICRO_VERSION</h3> -<pre class="programlisting">#define GEXIV2_MICRO_VERSION 6 +<pre class="programlisting">#define GEXIV2_MICRO_VERSION 8 </pre> </div> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/docs/reference/html/index.html new/gexiv2-0.10.8/docs/reference/html/index.html --- old/gexiv2-0.10.7/docs/reference/html/index.html 2017-12-24 12:45:08.000000000 +0100 +++ new/gexiv2-0.10.8/docs/reference/html/index.html 2018-02-05 22:59:17.000000000 +0100 @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">gexiv2 Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for gexiv2 0.10.7. + for gexiv2 0.10.8. The latest version of this documentation can be found on-line at <a class="ulink" href="http://developer.gnome.org/gexiv2/unstable/" target="_top">http://developer.gnome.org/gexiv2/unstable</a>. </p></div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/gexiv2-metadata.cpp new/gexiv2-0.10.8/gexiv2/gexiv2-metadata.cpp --- old/gexiv2-0.10.7/gexiv2/gexiv2-metadata.cpp 2017-12-24 12:33:30.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/gexiv2-metadata.cpp 2018-01-11 19:23:17.000000000 +0100 @@ -19,6 +19,7 @@ #include "gexiv2-log.h" #include "gexiv2-log-private.h" #include <string> +#include <cmath> #include <glib-object.h> #include <gio/gio.h> #include <exiv2/image.hpp> @@ -784,7 +785,18 @@ } gdouble gexiv2_metadata_get_fnumber (GExiv2Metadata *self) { - return gexiv2_metadata_get_exif_tag_rational_as_double(self, "Exif.Photo.FNumber", -1.0); + gdouble fnumber = gexiv2_metadata_get_exif_tag_rational_as_double(self, "Exif.Photo.FNumber", -1.0); + if (fnumber == -1.0) { + gdouble aperture_value = gexiv2_metadata_get_exif_tag_rational_as_double(self, + "Exif.Photo.ApertureValue", + -1.0); + if (aperture_value == -1.0) + return fnumber; + + fnumber = pow (2.0, aperture_value / 2.0); + } + + return fnumber; } gdouble gexiv2_metadata_get_focal_length (GExiv2Metadata *self) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/gexiv2-metadata.h new/gexiv2-0.10.8/gexiv2/gexiv2-metadata.h --- old/gexiv2-0.10.7/gexiv2/gexiv2-metadata.h 2017-12-24 12:33:30.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/gexiv2-metadata.h 2018-02-05 22:40:27.000000000 +0100 @@ -178,6 +178,8 @@ typedef struct _GExiv2MetadataClass GExiv2MetadataClass; typedef struct _GExiv2MetadataPrivate GExiv2MetadataPrivate; +G_DEFINE_AUTOPTR_CLEANUP_FUNC(GExiv2Metadata, g_object_unref) + struct _GExiv2Metadata { GObject parent_instance; @@ -901,6 +903,8 @@ * @self: An instance of #GExiv2Metadata * * See <ulink url="https://en.wikipedia.org/wiki/F-number"></ulink> for more information. + * If Exif.Photo.FNumber does not exist, it will fall back to calculating the FNumber from + * Exif.Photo.ApertureValue (if available); * * Returns: The exposure Fnumber as a gdouble, or -1.0 if tag is not present or invalid. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/gexiv2-preview-image.h new/gexiv2-0.10.8/gexiv2/gexiv2-preview-image.h --- old/gexiv2-0.10.7/gexiv2/gexiv2-preview-image.h 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/gexiv2-preview-image.h 2018-02-05 22:40:27.000000000 +0100 @@ -34,10 +34,13 @@ (G_TYPE_INSTANCE_GET_CLASS ((obj), GEXIV2_TYPE_PREVIEW_IMAGE, GExiv2PreviewImageClass)) + typedef struct _GExiv2PreviewImage GExiv2PreviewImage; typedef struct _GExiv2PreviewImageClass GExiv2PreviewImageClass; typedef struct _GExiv2PreviewImagePrivate GExiv2PreviewImagePrivate; +G_DEFINE_AUTOPTR_CLEANUP_FUNC(GExiv2PreviewImage, g_object_unref) + struct _GExiv2PreviewImage { GObject parent_instance; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/gexiv2-preview-properties.h new/gexiv2-0.10.8/gexiv2/gexiv2-preview-properties.h --- old/gexiv2-0.10.7/gexiv2/gexiv2-preview-properties.h 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/gexiv2-preview-properties.h 2018-02-05 22:40:27.000000000 +0100 @@ -38,6 +38,8 @@ typedef struct _GExiv2PreviewPropertiesClass GExiv2PreviewPropertiesClass; typedef struct _GExiv2PreviewPropertiesPrivate GExiv2PreviewPropertiesPrivate; +G_DEFINE_AUTOPTR_CLEANUP_FUNC(GExiv2PreviewProperties, g_object_unref) + struct _GExiv2PreviewProperties { GObject parent_instance; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/gexiv2-version.h new/gexiv2-0.10.8/gexiv2/gexiv2-version.h --- old/gexiv2-0.10.7/gexiv2/gexiv2-version.h 2017-12-24 12:44:36.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/gexiv2-version.h 2018-02-05 22:58:39.000000000 +0100 @@ -13,7 +13,7 @@ #define GEXIV2_MAJOR_VERSION 0 #define GEXIV2_MINOR_VERSION 10 -#define GEXIV2_MICRO_VERSION 6 +#define GEXIV2_MICRO_VERSION 8 /** * GEXIV2_CHECK_VERSION: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2/meson.build new/gexiv2-0.10.8/gexiv2/meson.build --- old/gexiv2-0.10.7/gexiv2/meson.build 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2/meson.build 2018-01-11 19:25:46.000000000 +0100 @@ -35,7 +35,11 @@ # Static map file mapfile = 'gexiv2.map' -vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile) +if host_machine.system() == 'darwin' + vflag = '' +else + vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile) +endif gexiv2 = library('gexiv2', ['gexiv2-metadata.cpp', @@ -62,6 +66,8 @@ dependencies : [gobject, exiv2], install : true) +pc_deps = ['glib-2.0', 'gobject-2.0'] + pkg.generate( description : 'GObject bindings for exiv2', libraries : gexiv2, @@ -69,7 +75,7 @@ name : 'GExiv2', filebase : 'gexiv2', requires_private : 'exiv2', - requires : ['glib-2.0', 'gobject-2.0'] + requires : pc_deps ) # set unconditionally @@ -91,5 +97,6 @@ identifier_prefix : 'GExiv2', export_packages : 'gexiv2', includes : ['GObject-2.0'], + header : 'gexiv2/gexiv2.h', install : true) endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/gexiv2.vapi new/gexiv2-0.10.8/gexiv2.vapi --- old/gexiv2-0.10.7/gexiv2.vapi 2017-12-24 12:44:51.000000000 +0100 +++ new/gexiv2-0.10.8/gexiv2.vapi 2018-02-05 22:59:10.000000000 +0100 @@ -14,6 +14,8 @@ public void clear_xmp (); public void delete_gps_info (); public void erase_exif_thumbnail (); + [Version (deprecated = true, deprecated_since = "0.10.3")] + public void free (); public bool from_app1_segment ([CCode (array_length = false)] uchar[] data, long n_data) throws GLib.Error; public string? generate_xmp_packet (GExiv2.XmpFormatFlags xmp_format_flags, uint32 padding); public string? get_comment (); @@ -87,6 +89,8 @@ public class PreviewImage : GLib.Object { [CCode (has_construct_function = false)] protected PreviewImage (); + [Version (deprecated = true, deprecated_since = "0.10.3")] + public void free (); [CCode (array_length_pos = 0.1, array_length_type = "guint32")] public unowned uint8[] get_data (); public unowned string get_extension (); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/meson.build new/gexiv2-0.10.8/meson.build --- old/gexiv2-0.10.7/meson.build 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/meson.build 2018-02-05 22:56:47.000000000 +0100 @@ -1,4 +1,4 @@ -project('gexiv2', ['c', 'cpp'], version : '0.10.6') +project('gexiv2', ['c', 'cpp'], version : '0.10.8') gnome = import('gnome') pkg = import('pkgconfig') Binary files old/gexiv2-0.10.7/test/data/no-fnumber.jpg and new/gexiv2-0.10.8/test/data/no-fnumber.jpg differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/test/gexiv2-regression.c new/gexiv2-0.10.8/test/gexiv2-regression.c --- old/gexiv2-0.10.7/test/gexiv2-regression.c 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/test/gexiv2-regression.c 2018-02-05 22:41:23.000000000 +0100 @@ -14,6 +14,24 @@ #include <string.h> +static void test_bgo_792239(void) +{ + GExiv2Metadata *meta = NULL; + gdouble fnumber = -1.0; + gboolean result = FALSE; + GError *error = NULL; + + meta = gexiv2_metadata_new(); + g_assert_nonnull(meta); + result = gexiv2_metadata_open_path(meta, SAMPLE_PATH "/no-fnumber.jpg", &error); + g_assert_no_error(error); + g_assert_true(result); + fnumber = gexiv2_metadata_get_fnumber(meta); + g_assert_cmpfloat(fnumber, !=, -1.0); + + g_clear_object(&meta); +} + /* Check that gexiv2 correctly handles ratios with 0/0 as used by * some cameras */ @@ -68,11 +86,35 @@ g_clear_pointer (&raw_tag, g_bytes_unref); } +static void test_bgo_790925(void) +{ + g_autoptr(GExiv2Metadata) meta = NULL; + g_autoptr(GExiv2PreviewImage) image = NULL; + GExiv2PreviewProperties **props = NULL; + GError *error = NULL; + gboolean result = FALSE; + + meta = gexiv2_metadata_new (); + g_assert_nonnull (meta); + + result = gexiv2_metadata_open_path (meta, SAMPLE_PATH "/original.jpg", &error); + g_assert_no_error(error); + g_assert_true(result); + + props = gexiv2_metadata_get_preview_properties (meta); + g_assert_nonnull (props); + + image = gexiv2_metadata_get_preview_image (meta, *props); + g_assert_nonnull(image); +} + int main(int argc, char *argv[static argc + 1]) { g_test_init(&argc, &argv, NULL); g_test_add_func("/bugs/gnome/775249", test_bgo_775249); g_test_add_func("/bugs/gnome/730136", test_bgo_730136); + g_test_add_func("/bugs/gnome/792239", test_bgo_792239); + g_test_add_func("/bugs/gnome/790925", test_bgo_790925); return g_test_run(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/vapi/GExiv2-0.10.metadata new/gexiv2-0.10.8/vapi/GExiv2-0.10.metadata --- old/gexiv2-0.10.7/vapi/GExiv2-0.10.metadata 2017-12-24 12:32:36.000000000 +0100 +++ new/gexiv2-0.10.8/vapi/GExiv2-0.10.metadata 2018-01-11 19:25:46.000000000 +0100 @@ -1,9 +1,3 @@ -GExiv2 cheader_filename="gexiv2/gexiv2.h" - Metadata .from_app1_segment skip .open_buf skip - .free skip - -PreviewImage - .free skip diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gexiv2-0.10.7/vapi/meson.build new/gexiv2-0.10.8/vapi/meson.build --- old/gexiv2-0.10.7/vapi/meson.build 2017-12-24 12:32:37.000000000 +0100 +++ new/gexiv2-0.10.8/vapi/meson.build 2018-01-11 19:25:46.000000000 +0100 @@ -1,3 +1,4 @@ vapi = gnome.generate_vapi('gexiv2', - sources : gir.get(0), - install : true) + sources : [gir.get(0) , 'gexiv2-custom.vala'], + install : true, + packages: pc_deps)
