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.<lua script name> 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:<file> 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:<ID> --remote --open-window --remote --close-window -The id:<ID> parameter sends subsequent commands to the specified window. +The id:<ID> 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: <Esc> 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<no. of cpu cores>; 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
