Hello community,

here is the log from the commit of package geeqie for openSUSE:Factory checked 
in at 2019-08-28 18:34:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/geeqie (Old)
 and      /work/SRC/openSUSE:Factory/.geeqie.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "geeqie"

Wed Aug 28 18:34:47 2019 rev:18 rq:726445 version:1.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/geeqie/geeqie.changes    2019-08-05 
14:51:27.255493052 +0200
+++ /work/SRC/openSUSE:Factory/.geeqie.new.7948/geeqie.changes  2019-08-28 
18:34:48.713290698 +0200
@@ -1,0 +2,10 @@
+Fri Aug 23 13:02:45 UTC 2019 - Paolo Stivanin <[email protected]>
+
+- Update to version 1.5.1
+  - #626 - High CPU load with animated GIFs
+  - #683 - Build failuer on macOS
+  - #686 - Zoom lable adjustment
+  - #703 - non-glibc fix
+  - Lua compatibility
+
+-------------------------------------------------------------------

Old:
----
  geeqie-1.5.tar.xz
  geeqie-1.5.tar.xz.asc

New:
----
  geeqie-1.5.1.tar.xz
  geeqie-1.5.1.tar.xz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ geeqie.spec ++++++
--- /var/tmp/diff_new_pack.6k9eNd/_old  2019-08-28 18:34:49.761290516 +0200
+++ /var/tmp/diff_new_pack.6k9eNd/_new  2019-08-28 18:34:49.761290516 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           geeqie
-Version:        1.5
+Version:        1.5.1
 Release:        0
 Summary:        Lightweight Gtk+ based image viewer
 License:        GPL-2.0-or-later

++++++ geeqie-1.5.tar.xz -> geeqie-1.5.1.tar.xz ++++++
++++ 1890 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/.travis.yml new/geeqie-1.5.1/.travis.yml
--- old/geeqie-1.5/.travis.yml  2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/.travis.yml        2019-08-20 21:01:23.000000000 +0200
@@ -1,32 +1,10 @@
 language: c
 os: linux
-dist: trusty
+dist: bionic
 sudo: required
 compiler:
   - gcc
   - clang
-addons:
-  apt:
-    sources:
-      - trusty
-    packages:
-      - autoconf
-      - automake
-      - autotools-dev
-      - build-essential
-      - debhelper
-      - dh-autoreconf
-      - dpkg-dev
-      - gnome-doc-utils
-      - gnome-doc-utils
-      - imagemagick
-      - intltool
-      - libexiv2-dev
-      - libgtk2.0-dev
-      - libjpeg-dev
-      - liblcms2-dev
-      - liblircclient-dev
-      - liblua5.1-0-dev
-      - libtiff-dev
-      - libtool
-script: (CFLAGS= ./autogen.sh) && make
+before_install:
+  - sudo apt-get install -y autoconf automake autotools-dev build-essential 
debhelper dh-autoreconf dpkg-dev gnome-doc-utils gnome-doc-utils imagemagick 
intltool libexiv2-dev libgtk2.0-dev libjpeg-dev liblcms2-dev liblircclient-dev 
liblua5.1-0-dev libtiff-dev libtool
+script: (CFLAGS="-fPIC" ./autogen.sh) && make
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/ChangeLog new/geeqie-1.5.1/ChangeLog
--- old/geeqie-1.5/ChangeLog    2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/ChangeLog  2019-08-20 21:01:23.000000000 +0200
@@ -1,4 +1,84 @@
-commit c029c5f0
+commit bd1ecdb6
+Author: Colin Clark <[email protected]>
+Date:   Mon Aug 12 10:25:26 2019 +0100
+
+    Fix ZoneDetect licence bug
+    
+    ZoneDetect licence was not displayed
+
+commit 18afee58
+Author: Colin Clark <[email protected]>
+Date:   Tue Aug 6 12:49:55 2019 +0100
+
+    Bug fix #626: Animated GIFS lead to high CPU load
+    
+    https://github.com/BestImageViewer/geeqie/issues/626
+    
+    Cure a memory leak.
+    A less significant memory leak remains.
+
+commit bc94f215
+Author: Colin Clark <[email protected]>
+Date:   Mon Aug 5 12:56:48 2019 +0100
+
+    Bug fix: Eliminate runtime error
+    
+    Eliminate runtime error: "gdk_pixbuf_format_get_name: assertion 'format
+    != NULL' failed"
+
+commit 538c3261
+Author: Colin Clark <[email protected]>
+Date:   Sun Aug 4 17:08:01 2019 +0100
+
+    Fix #626: Animated GIFS lead to high CPU load
+    
+    https://github.com/BestImageViewer/geeqie/issues/626
+    
+    File is read asynchronously, so no longer blocks while the file is read.
+    Cpu load is still high, but this is unavoidable.
+
+commit d7d01330
+Author: Dmitry Marakasov <>
+Date:   Sat Aug 3 12:34:42 2019 +0100
+
+    Fix #703: Fix build on non-glibc platforms
+    
+    https://github.com/BestImageViewer/geeqie/pull/703
+
+commit 662438ad
+Author: Colin Clark <[email protected]>
+Date:   Sat Aug 3 12:25:16 2019 +0100
+
+    Fix #683: Build fails on macOS due to use of _NL_TIME_FIRST_WEEKDAY
+    
+    https://github.com/BestImageViewer/geeqie/issues/683
+
+commit ce3619e6
+Author: Klaus Ethgen <[email protected]>
+Date:   Sat Jul 27 09:30:15 2019 +0100
+
+    Compatibility function for lua > 5.1
+
+commit 28221d2f
+Author: Klaus Ethgen <[email protected]>
+Date:   Sun Jul 28 20:24:06 2019 +0100
+
+    Make the zoom lable a bit bigger
+    
+    Thanks Sami Farin for reporting and patch.
+    
+    Closes #686.
+
+commit 87e76531
+Author: Klaus Ethgen <[email protected]>
+Date:   Sun Jul 28 23:14:39 2019 +0100
+
+    Limiting to more recent version of glib and fix travis
+    
+    g_utf8_make_valid was implemented with glib 2.52. That also causes
+    builds on ubuntu trusty fail.
+
+commit 17dfa054
 Author: Colin Clark <[email protected]>
 Date:   Thu Jul 25 09:25:28 2019 +0100
 
@@ -6,7 +86,7 @@
     
     Improved error detection
 
-commit 66aa92c5
+commit 69b6794d
 Author: Colin Clark <[email protected]>
 Date:   Wed Jul 24 16:47:06 2019 +0100
 
@@ -17,19 +97,19 @@
     European locales use a comma as a decimal separator.
     The XMP spec. specifies a dot as a decimal separator.
 
-commit 931cfae9
+commit e3f1bab5
 Author: Виктор Майстренко <>
 Date:   Fri Jul 12 10:43:56 2019 +0100
 
     Update Russian translation
 
-commit cf2c3d52
+commit 435502b0
 Author: Colin Clark <[email protected]>
 Date:   Fri Jul 12 10:34:37 2019 +0100
 
     Remove references to obsolete desktop files
 
-commit 85fe8e1f
+commit 99a30398
 Author: Colin Clark <[email protected]>
 Date:   Sun Jun 30 12:22:19 2019 +0100
 
@@ -43,7 +123,7 @@
     
     The output of the script should of course be text.
 
-commit ff0019ae
+commit 2038ab56
 Author: Colin Clark <[email protected]>
 Date:   Sat Jun 22 16:37:40 2019 +0100
 
@@ -52,7 +132,7 @@
     When the Start-up directory radio buttons were initialized, the setting
     always reverted to No change.
 
-commit 7dc08907
+commit cc9a39ff
 Author: Colin Clark <[email protected]>
 Date:   Mon Jun 17 11:32:22 2019 +0100
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/ChangeLog.html new/geeqie-1.5.1/ChangeLog.html
--- old/geeqie-1.5/ChangeLog.html       2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/ChangeLog.html     2019-08-20 21:01:23.000000000 +0200
@@ -1,39 +1,84 @@
 <html>
 <body>
 <ul>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=c029c5f0f80c49ef89f3548f3810c4d6027a9022";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-25<br><textarea rows=4 
cols=100>Bug fix: Compute TimeZone data 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=bd1ecdb6d863300c434e24d6b91b257cdf82547c";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-08-12<br><textarea rows=4 
cols=100>Fix ZoneDetect licence bug 
+
+ZoneDetect licence was not displayed
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=18afee58f0d7d576959a127cd42a466fce5290b3";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-08-06<br><textarea rows=4 
cols=100>Bug fix #626: Animated GIFS lead to high CPU load 
+
+https://github.com/BestImageViewer/geeqie/issues/626
+
+Cure a memory leak.
+A less significant memory leak remains.
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=bc94f215e4435be50531d6a687bbdb966e1ae442";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-08-05<br><textarea rows=4 
cols=100>Bug fix: Eliminate runtime error 
+
+Eliminate runtime error: "gdk_pixbuf_format_get_name: assertion 'format
+!= NULL' failed"
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=538c3261aba3d8f6b5177bc0163e134b0de9392a";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-08-04<br><textarea rows=4 
cols=100>Fix #626: Animated GIFS lead to high CPU load 
+
+https://github.com/BestImageViewer/geeqie/issues/626
+
+File is read asynchronously, so no longer blocks while the file is read.
+Cpu load is still high, but this is unavoidable.
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=d7d0133043064971077c9e1effa4edd35aaaf902";>view
 commit </a></li><p>Author: Dmitry Marakasov<br>Date: 2019-08-03<br><textarea 
rows=4 cols=100>Fix #703: Fix build on non-glibc platforms 
+
+https://github.com/BestImageViewer/geeqie/pull/703
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=662438ad30d3ca609b7ca467fadf228abd16a642";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-08-03<br><textarea rows=4 
cols=100>Fix #683: Build fails on macOS due to use of _NL_TIME_FIRST_WEEKDAY 
+
+https://github.com/BestImageViewer/geeqie/issues/683
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=ce3619e619c99eeca253bc2a842d31451b57c378";>view
 commit </a></li><p>Author: Klaus Ethgen<br>Date: 2019-07-27<br><textarea 
rows=4 cols=100>Compatibility function for lua > 5.1 
+
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=28221d2f86f54192e5385f4e5ef4ddda45c45f0d";>view
 commit </a></li><p>Author: Klaus Ethgen<br>Date: 2019-07-28<br><textarea 
rows=4 cols=100>Make the zoom lable a bit bigger 
+
+Thanks Sami Farin for reporting and patch.
+
+Closes #686.
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=87e765314a6f7c7d5ed850dea2a63b62965c5e46";>view
 commit </a></li><p>Author: Klaus Ethgen<br>Date: 2019-07-28<br><textarea 
rows=4 cols=100>Limiting to more recent version of glib and fix travis 
+
+g_utf8_make_valid was implemented with glib 2.52. That also causes
+builds on ubuntu trusty fail.
+</textarea><br><br></p>
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=17dfa05433478f50441281b425fba75470e5700d";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-25<br><textarea rows=4 
cols=100>Bug fix: Compute TimeZone data 
 
 Improved error detection
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=66aa92c5b2ab1f9bf26841b732b500afef46db48";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-24<br><textarea rows=4 
cols=100>Fix #691: wrong GPS 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=69b6794d32a19c8985e73fe85188f6c128b8f2f5";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-24<br><textarea rows=4 
cols=100>Fix #691: wrong GPS 
 
 https://github.com/BestImageViewer/geeqie/issues/691
 
 European locales use a comma as a decimal separator.
 The XMP spec. specifies a dot as a decimal separator.
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=931cfae999c87fd38700df178624788182c23868";>view
 commit </a></li><p>Author: Виктор Майстренко<br>Date: 
2019-07-12<br><textarea rows=4 cols=100>Update Russian translation 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=e3f1bab5ed4686576b707bf54d237558cd5f9e31";>view
 commit </a></li><p>Author: Виктор Майстренко<br>Date: 
2019-07-12<br><textarea rows=4 cols=100>Update Russian translation 
 
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=cf2c3d525a553bc3989afecbdd44835480fa2c00";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-12<br><textarea rows=4 
cols=100>Remove references to obsolete desktop files 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=435502b033bd89b12bba42b6b5f5d293d9de88d1";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-07-12<br><textarea rows=4 
cols=100>Remove references to obsolete desktop files 
 
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=85fe8e1fdd642cc8538cfa016e8773699d536b34";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-30<br><textarea rows=4 
cols=100>Enable lua scripts to be called from Info sidebar 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=99a30398f7184ccbd313f5d589285f343d9eb658";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-30<br><textarea rows=4 
cols=100>Enable lua scripts to be called from Info sidebar 
 
 A lua script can be called from any of the List Panes in the Info
 sidebar.
 
 Add a new entry and in the Key field use:
-lua.<lua script name>
+lua.&lt;lua script name&gt;
 
 The output of the script should of course be text.
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=ff0019ae0780e80bd0fef1336444b1804172b38c";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-22<br><textarea rows=4 
cols=100>Bug fix: Start-up directory setting not preserved 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=2038ab5644598c95472977fce997d58f88f18d8c";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-22<br><textarea rows=4 
cols=100>Bug fix: Start-up directory setting not preserved 
 
 When the Start-up directory radio buttons were initialized, the setting
 always reverted to No change.
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=7dc08907ff2439a6074e8c043c06e440d938dbba";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-17<br><textarea rows=4 
cols=100>Implement downloadable timezone database 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=cc9a39fff411f20094b2ea09074bc541d0568330";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2019-06-17<br><textarea rows=4 
cols=100>Implement downloadable timezone database 
 
 Option in Preferences/General to download timezone database from
 geeqie.org/downloads
@@ -321,7 +366,7 @@
 
 The target path is shown as a tooltip.
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=d354f618240b2889c9bb895f11f6d439c4994e1b";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-10-21<br><textarea rows=4 
cols=100>Do not grab focus when --remote view:<file> is used 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=d354f618240b2889c9bb895f11f6d439c4994e1b";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-10-21<br><textarea rows=4 
cols=100>Do not grab focus when --remote view:&lt;file&gt; is used 
 
 Ref:
 https://bugs.launchpad.net/ubuntu/+source/geeqie/+bug/1781858
@@ -932,11 +977,11 @@
 <li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=01fd562adaacb04e680a655ada55ba983388eece";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-04-01<br><textarea rows=4 
cols=100>Additional remote commands for layout windows 
 
 Additional remote commands:
---remote --id:<ID>
+--remote --id:&lt;ID&gt;
 --remote --open-window
 --remote --close-window
 
-The id:<ID> parameter sends subsequent commands to the specified window.
+The id:&lt;ID&gt; parameter sends subsequent commands to the specified window.
 The window titlebar show the window identifier.
 </textarea><br><br></p>
 <li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=69022467c2db6ad8233114d743423e807cf35ded";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-03-29<br><textarea rows=4 
cols=100>Fix #162: Cannot symlink file if two geeqie instances are running 
@@ -1027,7 +1072,7 @@
 <li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=0a6cb49628602587229c6c88627fa2e1453b1d52";>view
 commit </a></li><p>Author: Klaus Ethgen<br>Date: 2018-01-23<br><textarea 
rows=4 cols=100>Fixing automake build system 
 
 </textarea><br><br></p>
-<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=a58676634b1432605e3a4330c3395d62a6c90b88";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-01-22<br><textarea rows=4 
cols=100>Fix #523: <Esc> in "Really continue?" copy confirmation dialog leads 
to crash 
+<li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=a58676634b1432605e3a4330c3395d62a6c90b88";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2018-01-22<br><textarea rows=4 
cols=100>Fix #523: &lt;Esc&gt; in "Really continue?" copy confirmation dialog 
leads to crash 
 
 https://github.com/BestImageViewer/geeqie/issues/523
 
@@ -1236,7 +1281,7 @@
 Revised user docs show to use:
 
 sudo make uninstall; sudo make maintainer-clean; ./autogen.sh
-make -j<no. of cpu cores>; sudo make install
+make -j&lt;no. of cpu cores&gt;; sudo make install
 </textarea><br><br></p>
 <li><a 
href="http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commit;h=0d8825dac65184ad2d6a8bec5c7954d3046935ee";>view
 commit </a></li><p>Author: Colin Clark<br>Date: 2017-11-13<br><textarea rows=4 
cols=100>Addl Fix #137: "Copy path" problem (or may be feature) 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/NEWS new/geeqie-1.5.1/NEWS
--- old/geeqie-1.5/NEWS 2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/NEWS       2019-08-20 21:01:23.000000000 +0200
@@ -1,3 +1,13 @@
+Geeqie 1.5.1
+============
+
+- Bugfixes for release 1.5
+- #626 - High CPU load with animated GIFs
+- #683 - Build failuer on macOS
+- #686 - Zoom lable adjustment
+- #703 - non-glibc fix
+- Lua compatibility
+
 Geeqie 1.5
 ==========
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/README.md new/geeqie-1.5.1/README.md
--- old/geeqie-1.5/README.md    2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/README.md  2019-08-20 21:01:23.000000000 +0200
@@ -1,5 +1,5 @@
       ###################################################################
-      ##                          Geeqie 1.5                           ##
+      ##                         Geeqie 1.5.1                          ##
       ##                                                               ##
       ##              Copyright (C) 2008 - 2018 The Geeqie Team        ##
       ##              Copyright (C) 1999 - 2006 John Ellis.            ##
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/config.h.in new/geeqie-1.5.1/config.h.in
--- old/geeqie-1.5/config.h.in  2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/config.h.in        2019-08-20 21:01:23.000000000 +0200
@@ -159,6 +159,9 @@
 /* Define to 1 if you have the <unistd.h> header file. */
 #undef HAVE_UNISTD_H
 
+/* Define if _NL_TIME_FIRST_WEEKDAY is available */
+#undef HAVE__NL_TIME_FIRST_WEEKDAY
+
 /* Build on native win32 OS */
 #undef OS_WIN32
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/configure.ac new/geeqie-1.5.1/configure.ac
--- old/geeqie-1.5/configure.ac 2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/configure.ac       2019-08-20 21:01:23.000000000 +0200
@@ -15,7 +15,7 @@
 dnl GNU General Public License for more details.
 
 AC_PREREQ(2.57)
-AC_INIT([geeqie], 1.5, [https://github.com/BestImageViewer/geeqie/issues], [], 
[http://www.geeqie.org/])
+AC_INIT([geeqie], 1.5.1, [https://github.com/BestImageViewer/geeqie/issues], 
[], [http://www.geeqie.org/])
 
 # Add -Werror to the default CFLAGS
 CFLAGS+=" -Werror -Wno-error=deprecated-declarations -Wno-error=sign-compare 
-Wno-error=return-type"
@@ -197,7 +197,7 @@
   prefix=$prefix
 fi
 
-AM_PATH_GLIB_2_0(2.24.0,,AC_MSG_ERROR(GLIB >= 2.24.0 not installed.))
+AM_PATH_GLIB_2_0(2.52.0,,AC_MSG_ERROR(GLIB >= 2.52.0 not installed.))
 AC_ARG_ENABLE([gtk3], AC_HELP_STRING([--enable-gtk3], [use gtk3 instead of 
gtk2]),[gtk3="${enableval}"], [gtk3=m4_ifdef([AM_PATH_GTK_3_0], 
m4_ifdef([AM_PATH_GTK_2_0], [no], [auto]), [no])])
 
 if test x$gtk3 = xyes; then
@@ -518,22 +518,29 @@
     [liblua=$enableval], [liblua=auto])
 
 if test "x${liblua}" != "xno"; then
-  PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1,
+  PKG_CHECK_MODULES(LUA, lua5.3 >= 5.3,
     [
       HAVE_LUA=yes
       AC_DEFINE(HAVE_LUA, 1, [define to enable lua support])
     ],
     [
-      PKG_CHECK_MODULES(LUA, lua >= 5.1,
-        [
-          HAVE_LUA=yes
-          AC_DEFINE(HAVE_LUA, 1, [define to enable lua support])
-        ],
-        [
-           HAVE_LUA=no
-           AC_MSG_WARN([$LUA_PKG_ERRORS])
-        ])
-    ])
+     PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1,
+       [
+        HAVE_LUA=yes
+        AC_DEFINE(HAVE_LUA, 1, [define to enable lua support])
+       ],
+       [
+        PKG_CHECK_MODULES(LUA, lua >= 5.1,
+           [
+             HAVE_LUA=yes
+             AC_DEFINE(HAVE_LUA, 1, [define to enable lua support])
+           ],
+           [
+              HAVE_LUA=no
+              AC_MSG_WARN([$LUA_PKG_ERRORS])
+           ])
+       ])
+     ])
 else
   HAVE_LUA=disabled
 fi
@@ -576,6 +583,21 @@
 
 AM_CONDITIONAL(HAVE_MARKDOWN, [ "$(command -v markdown)" ])
 
+# _NL_TIME_FIRST_WEEKDAY support
+# note that it is an enum and not a define
+# ----------------------------------------------------------------------
+
+AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
+AC_TRY_LINK([#include <langinfo.h>], [
+char c;
+c = *((unsigned char *)  nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
+], nl_ok=yes, nl_ok=no)
+AC_MSG_RESULT($nl_ok)
+if test "$nl_ok" = "yes"; then
+  AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
+      [Define if _NL_TIME_FIRST_WEEKDAY is available])
+fi
+
 # ----------------------------------------------------------------------
 
 AH_TOP([
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/image_load_gdk.c new/geeqie-1.5.1/src/image_load_gdk.c
--- old/geeqie-1.5/src/image_load_gdk.c 2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/image_load_gdk.c       2019-08-20 21:01:23.000000000 
+0200
@@ -26,7 +26,17 @@
 
 static gchar* image_loader_gdk_get_format_name(gpointer loader)
 {
-       return 
gdk_pixbuf_format_get_name(gdk_pixbuf_loader_get_format(GDK_PIXBUF_LOADER(loader)));
+       GdkPixbufFormat *format;
+
+       format = gdk_pixbuf_loader_get_format(GDK_PIXBUF_LOADER(loader));
+       if (format)
+               {
+               return gdk_pixbuf_format_get_name(format);
+               }
+       else
+               {
+               return NULL;
+               }
 }
 static gchar** image_loader_gdk_get_format_mime_types(gpointer loader)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/layout.c new/geeqie-1.5.1/src/layout.c
--- old/geeqie-1.5/src/layout.c 2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/layout.c       2019-08-20 21:01:23.000000000 +0200
@@ -63,7 +63,7 @@
 #define TOOLWINDOW_DEF_HEIGHT 450
 
 #define PROGRESS_WIDTH 150
-#define ZOOM_LABEL_WIDTH 64
+#define ZOOM_LABEL_WIDTH 120
 
 #define PANE_DIVIDER_SIZE 10
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/layout_image.c new/geeqie-1.5.1/src/layout_image.c
--- old/geeqie-1.5/src/layout_image.c   2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/layout_image.c 2019-08-20 21:01:23.000000000 +0200
@@ -283,6 +283,7 @@
        if(!fd) return;
        if(fd->iter) g_object_unref(fd->iter);
        if(fd->gpa) g_object_unref(fd->gpa);
+       if(fd->cancellable) g_object_unref(fd->cancellable);
        g_free(fd);
 }
 
@@ -347,6 +348,10 @@
                if(lw->animation)
                        {
                        lw->animation->valid = FALSE;
+                       if (lw->animation->cancellable)
+                               {
+                               
g_cancellable_cancel(lw->animation->cancellable);
+                               }
                        lw->animation = NULL;
                        }
                return FALSE;
@@ -368,32 +373,86 @@
                }
 }
 
+
+static void animation_async_ready_cb(GObject *source_object, GAsyncResult 
*res, gpointer data)
+{
+       GError *error = NULL;
+       AnimationData *animation = data;
+
+       if (animation)
+               {
+               if (g_cancellable_is_cancelled(animation->cancellable))
+                       {
+                       gdk_pixbuf_animation_new_from_stream_finish(res, NULL);
+                       g_object_unref(animation->in_file);
+                       g_object_unref(animation->gfstream);
+                       image_animation_data_free(animation);
+                       return;
+                       }
+
+               animation->gpa = 
gdk_pixbuf_animation_new_from_stream_finish(res, &error);
+               if (animation->gpa)
+                       {
+                       if 
(!gdk_pixbuf_animation_is_static_image(animation->gpa))
+                               {
+                               if (animation->iter = 
gdk_pixbuf_animation_get_iter(animation->gpa,NULL))
+                                       {
+                                       animation->iter = 
gdk_pixbuf_animation_get_iter(animation->gpa, NULL);
+                                       // FIXME: the reference count is being 
incremented here. Reason unknown.
+                                       g_object_unref(animation->gpa);
+                                       animation->data_adr = 
animation->lw->image->image_fd;
+                                       animation->delay = 
gdk_pixbuf_animation_iter_get_delay_time(animation->iter);
+                                       animation->valid = TRUE;
+
+                                       
layout_image_animate_update_image(animation->lw);
+
+                                       g_timeout_add(animation->delay, 
show_next_frame, animation);
+                                       }
+                               }
+                       }
+               else
+                       {
+                       log_printf("Error reading GIF file: %s\n", 
error->message);
+                       }
+
+               g_object_unref(animation->in_file);
+               g_object_unref(animation->gfstream);
+               }
+}
+
 static gboolean layout_image_animate_new_file(LayoutWindow *lw)
 {
-       GError *err=NULL;
+       GFileInputStream *gfstream;
+       GError *error = NULL;
+       AnimationData *animation;
+       GFile *in_file;
 
        if(!layout_image_animate_check(lw)) return FALSE;
 
        if(lw->animation) lw->animation->valid = FALSE;
 
-       lw->animation = g_malloc0(sizeof(AnimationData));
-
-       if(!(lw->animation->gpa = 
gdk_pixbuf_animation_new_from_file(lw->image->image_fd->path,&err)) || err ||
-               gdk_pixbuf_animation_is_static_image(lw->animation->gpa) ||
-               !(lw->animation->iter = 
gdk_pixbuf_animation_get_iter(lw->animation->gpa,NULL)))
+       if (lw->animation)
                {
-               image_animation_data_free(lw->animation);
-               lw->animation = NULL;
-               return FALSE;
+               g_cancellable_cancel(lw->animation->cancellable);
                }
 
-       lw->animation->data_adr = lw->image->image_fd;
-       lw->animation->delay = 
gdk_pixbuf_animation_iter_get_delay_time(lw->animation->iter);
-       lw->animation->valid = TRUE;
+       animation = g_new0(AnimationData, 1);
+       lw->animation = animation;
+       animation->lw = lw;
+       animation->cancellable = g_cancellable_new();
 
-       layout_image_animate_update_image(lw);
-
-       g_timeout_add(lw->animation->delay, show_next_frame, lw->animation);
+       in_file = g_file_new_for_path(lw->image->image_fd->path);
+       animation->in_file = in_file;
+       gfstream = g_file_read(in_file, NULL, &error);
+       if (gfstream)
+               {
+               animation->gfstream = gfstream;
+               
gdk_pixbuf_animation_new_from_stream_async((GInputStream*)gfstream, 
animation->cancellable, animation_async_ready_cb, animation);
+               }
+       else
+               {
+               log_printf("Error reading GIF file: %s\nError: %s\n", 
lw->image->image_fd->path, error->message);
+               }
 
        return TRUE;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/lua.c new/geeqie-1.5.1/src/lua.c
--- old/geeqie-1.5/src/lua.c    2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/lua.c  2019-08-20 21:01:23.000000000 +0200
@@ -41,6 +41,25 @@
 static lua_State *L; /** The LUA object needed for all operations (NOTE: That 
is
                       * a upper-case variable to match the documentation!) */
 
+/* Taking that definition from lua 5.1 source */
+#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 502
+int luaL_typerror(lua_State *L, int narg, const char *tname)
+{
+       const char *msg = lua_pushfstring(L, "%s expected, got %s", tname, 
luaL_typename(L, narg));
+       return luaL_argerror(L, narg, msg);
+}
+
+# define LUA_register_meta(L, meta) luaL_setfuncs(L, meta, 0);
+# define LUA_register_global(L, string, func) \
+       lua_newtable(L); \
+       luaL_setfuncs(L, func, 0); \
+       lua_pushvalue(L, -1); \
+       lua_setglobal(L, string)
+#else
+# define LUA_register_meta(L, meta) luaL_register(L, NULL, meta)
+# define LUA_register_global(L, string, func) luaL_register(L, string, func)
+#endif
+
 static FileData *lua_check_image(lua_State *L, int index)
 {
        FileData **fd;
@@ -211,9 +230,9 @@
                        {"get_marks", lua_image_get_marks},
                        {NULL, NULL}
        };
-       luaL_register(L, "Image", image_methods);
+       LUA_register_global(L, "Image", image_methods);
        luaL_newmetatable(L, "Image");
-       luaL_register(L, NULL, meta_methods);
+       LUA_register_meta(L, meta_methods);
        lua_pushliteral(L, "__index");
        lua_pushvalue(L, -3);
        lua_settable(L, -3);
@@ -228,9 +247,9 @@
                        {"get_datum", lua_exif_get_datum},
                        {NULL, NULL}
        };
-       luaL_register(L, "Exif", exif_methods);
+       LUA_register_global(L, "Exif", exif_methods);
        luaL_newmetatable(L, "Exif");
-       luaL_register(L, NULL, meta_methods);
+       LUA_register_meta(L, meta_methods);
        lua_pushliteral(L, "__index");
        lua_pushvalue(L, -3);
        lua_settable(L, -3);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/misc.c new/geeqie-1.5.1/src/misc.c
--- old/geeqie-1.5/src/misc.c   2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/misc.c 2019-08-20 21:01:23.000000000 +0200
@@ -23,6 +23,7 @@
 #include "ui_fileops.h"
 
 #include <langinfo.h>
+#include <locale.h>
 
 gdouble get_zoom_increment(void)
 {
@@ -243,13 +244,32 @@
  * @brief Returns integer representing first_day_of_week
  * @returns Integer in range 1 to 7
  * 
- * Uses current locale to get first day of week
+ * Uses current locale to get first day of week.
+ * If _NL_TIME_FIRST_WEEKDAY is not available, ISO 8601
+ * states first day of week is Monday.
+ * USA, Mexico and Canada (and others) use Sunday as first day of week.
  * 
  * Sunday == 1
  */
 gint date_get_first_day_of_week()
 {
+       gchar *dot;
+       gchar *current_locale;
+
+#ifdef HAVE__NL_TIME_FIRST_WEEKDAY
        return nl_langinfo(_NL_TIME_FIRST_WEEKDAY)[0];
+#else
+       current_locale = setlocale(LC_ALL, NULL);
+       dot = strstr(current_locale, ".");
+       if ((strncmp(dot - 2, "US", 2) == 0) || (strncmp(dot - 2, "MX", 2) == 
0) || (strncmp(dot - 2, "CA", 2) == 0))
+               {
+               return 1;
+               }
+       else
+               {
+               return 2;
+               }
+#endif
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/pan-view/pan-util.c new/geeqie-1.5.1/src/pan-view/pan-util.c
--- old/geeqie-1.5/src/pan-view/pan-util.c      2019-07-26 20:19:11.000000000 
+0200
+++ new/geeqie-1.5.1/src/pan-view/pan-util.c    2019-08-20 21:01:23.000000000 
+0200
@@ -82,6 +82,12 @@
        return -1;
 }
 
+#if defined(__GLIBC_PREREQ)
+# if __GLIBC_PREREQ(2, 27)
+#  define HAS_GLIBC_STRFTIME_EXTENSIONS
+# endif
+#endif
+
 gchar *pan_date_value_string(time_t d, PanDateLengthType length)
 {
        struct tm td;
@@ -99,7 +105,7 @@
                        format = "%A %e";
                        break;
                case PAN_DATE_LENGTH_MONTH:
-#if __GLIBC_PREREQ(2, 27)
+#if defined(HAS_GLIBC_STRFTIME_EXTENSIONS) || defined(__FreeBSD__)
                        format = "%OB %Y";
 #else
                        format = "%B %Y";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/preferences.c new/geeqie-1.5.1/src/preferences.c
--- old/geeqie-1.5/src/preferences.c    2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/preferences.c  2019-08-20 21:01:23.000000000 +0200
@@ -3497,7 +3497,8 @@
        gint i_authors = 0;
        gchar *path;
        GString *copyright;
-       gchar *zd_path;
+       gchar *timezone_path;
+       gchar *basename;
        ZoneDetect *cd;
        FILE *fp = NULL;
 #define LINE_LENGTH 1000
@@ -3506,14 +3507,21 @@
        copyright = g_string_new(NULL);
        copyright = g_string_append(copyright, "This program comes with 
absolutely no warranty.\nGNU General Public License, version 2 or later.\nSee 
https://www.gnu.org/licenses/old-licenses/gpl-2.0.html\n\n";);
 
-       zd_path = g_build_filename(GQ_BIN_DIR, TIMEZONE_DATABASE, NULL);
-       cd = ZDOpenDatabase(zd_path);
-       if (cd)
+       path = path_from_utf8(TIMEZONE_DATABASE);
+       basename = g_path_get_basename(path);
+       timezone_path = g_build_filename(get_rc_dir(), basename, NULL);
+       if (g_file_test(timezone_path, G_FILE_TEST_EXISTS))
                {
-               copyright = g_string_append(copyright, ZDGetNotice(cd));
+               cd = ZDOpenDatabase(timezone_path);
+               if (cd)
+                       {
+                       copyright = g_string_append(copyright, ZDGetNotice(cd));
+                       ZDCloseDatabase(cd);
+                       }
                }
-       ZDCloseDatabase(cd);
-       g_free(zd_path);
+       g_free(path);
+       g_free(timezone_path);
+       g_free(basename);
 
        authors[0] = NULL;
        path = g_build_filename(GQ_HELPDIR, "AUTHORS", NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/geeqie-1.5/src/typedefs.h new/geeqie-1.5.1/src/typedefs.h
--- old/geeqie-1.5/src/typedefs.h       2019-07-26 20:19:11.000000000 +0200
+++ new/geeqie-1.5.1/src/typedefs.h     2019-08-20 21:01:23.000000000 +0200
@@ -362,12 +362,16 @@
 struct _AnimationData
 {
        ImageWindow *iw;
+       LayoutWindow *lw;
        GdkPixbufAnimation *gpa;
        GdkPixbufAnimationIter *iter;
        GdkPixbuf *gpb;
        FileData *data_adr;
        guint delay;
        gboolean valid;
+       GCancellable *cancellable;
+       GFile *in_file;
+       GFileInputStream *gfstream;
 };
 
 struct _CollectInfo



Reply via email to