Hello community,

here is the log from the commit of package feh for openSUSE:Factory checked in 
at 2018-02-27 16:59:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/feh (Old)
 and      /work/SRC/openSUSE:Factory/.feh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "feh"

Tue Feb 27 16:59:44 2018 rev:21 rq:580354 version:2.24

Changes:
--------
--- /work/SRC/openSUSE:Factory/feh/feh.changes  2018-02-18 11:45:59.797777167 
+0100
+++ /work/SRC/openSUSE:Factory/.feh.new/feh.changes     2018-02-27 
17:00:04.291459824 +0100
@@ -1,0 +2,8 @@
+Mon Feb 26 22:15:47 UTC 2018 - [email protected]
+
+- update to 2.24
+  * Improve performance when using --{max,min}-dimension in
+    slideshow mode
+  * Fix crash when using %m format specifier in slideshow mode
+
+-------------------------------------------------------------------

Old:
----
  feh-2.23.2.tar.bz2
  feh-2.23.2.tar.bz2.asc

New:
----
  feh-2.24.tar.bz2
  feh-2.24.tar.bz2.asc

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

Other differences:
------------------
++++++ feh.spec ++++++
--- /var/tmp/diff_new_pack.agX560/_old  2018-02-27 17:00:06.411383228 +0100
+++ /var/tmp/diff_new_pack.agX560/_new  2018-02-27 17:00:06.415383084 +0100
@@ -17,10 +17,10 @@
 
 
 Name:           feh
-Version:        2.23.2
+Version:        2.24
 Release:        0
 Summary:        X11 image viewer
-License:        MIT AND LGPL-2.0+
+License:        MIT AND LGPL-2.0-or-later
 Group:          Productivity/Graphics/Viewers
 Url:            https://feh.finalrewind.org/
 Source:         https://feh.finalrewind.org/%{name}-%{version}.tar.bz2

++++++ feh-2.23.2.tar.bz2 -> feh-2.24.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/ChangeLog new/feh-2.24/ChangeLog
--- old/feh-2.23.2/ChangeLog    2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/ChangeLog      2018-02-26 21:48:39.000000000 +0100
@@ -1,3 +1,12 @@
+Mon, 26 Feb 2018 21:41:38 +0100  Daniel Friesel <[email protected]>
+
+* Release v2.24
+    * Improve performance when using --{max,min}-dimension in slideshow mode
+      (patch by ulteq)
+    * Fix crash when using %m format specifier in slideshow mode
+      (introduced in feh 2.23.1)
+
+
 Mon, 12 Feb 2018 22:11:55 +0100  Daniel Friesel <[email protected]>
 
 * Release v2.23.2
@@ -192,7 +201,7 @@
       size which will not be updated when changing images (as was the case in
       feh < 2.15). This may or may not be fixed in the future.
 
-Sat, 16 Apr 2016 18:32:38 +0200  Daniel Frisel <[email protected]>
+Sat, 16 Apr 2016 18:32:38 +0200  Daniel Friesel <[email protected]>
 
 * Release v2.15.2
     * Fix --keep-zoom-vp not keeping the viewport x/y offsets (broken by 2.15)
@@ -764,7 +773,7 @@
       malicious URLs containing shell metacharacters (but only if those URLs
       led to a valid file)
     * Don't add ?randomnumber to URLs when downloading them, it confuses some
-      servers and is not really neccessary in general
+      servers and is not really necessary in general
 
 Thu Jun 10 12:12:04 CEST 2010  Daniel Friesel <[email protected]>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/config.mk new/feh-2.24/config.mk
--- old/feh-2.23.2/config.mk    2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/config.mk      2018-02-26 21:48:39.000000000 +0100
@@ -1,5 +1,5 @@
 PACKAGE ?= feh
-VERSION ?= 2.23.2
+VERSION ?= 2.24
 
 app ?= 0
 cam ?= 0
@@ -79,7 +79,7 @@
        MAN_EXIF = disabled
 endif
 
-MAN_DATE ?= February 12, 2018
+MAN_DATE ?= February 26, 2018
 
 # Uncomment this to use dmalloc
 #CFLAGS += -DWITH_DMALLOC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/feh.h new/feh-2.24/src/feh.h
--- old/feh-2.23.2/src/feh.h    2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/feh.h      2018-02-26 21:48:39.000000000 +0100
@@ -133,6 +133,7 @@
 void init_loadables_mode(void);
 void init_unloadables_mode(void);
 void feh_clean_exit(void);
+int feh_should_ignore_image(Imlib_Image * im);
 int feh_load_image(Imlib_Image * im, feh_file * file);
 void show_mini_usage(void);
 void slideshow_change_image(winwidget winwid, int change, int render);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/filelist.c new/feh-2.24/src/filelist.c
--- old/feh-2.23.2/src/filelist.c       2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/filelist.c 2018-02-26 21:48:39.000000000 +0100
@@ -464,9 +464,17 @@
 
 void feh_prepare_filelist(void)
 {
-       if (opt.list || opt.customlist || (opt.sort > SORT_MTIME)
-                       || opt.preload || opt.min_width || opt.min_height
-                       || (opt.max_width != UINT_MAX) || (opt.max_height != 
UINT_MAX)) {
+       /*
+        * list and customlist mode as well as the somewhat more fancy sort 
modes
+        * need access to file infos. Preloading them is also useful for
+        * list/customlist as --min-dimension/--max-dimension may filter images
+        * which should not be processed.
+        * Finally, if --min-dimension/--max-dimension (-> 
opt.filter_by_dimensions)
+        * is set and we're in thumbnail mode, we need to filter images first so
+        * we can create a properly sized thumbnail list.
+        */
+       if (opt.list || opt.preload || opt.customlist || (opt.sort > SORT_MTIME)
+                       || (opt.filter_by_dimensions && (opt.index || 
opt.collage || opt.thumbs || opt.bgmode))) {
                /* For these sort options, we have to preload images */
                filelist = feh_file_info_preload(filelist);
                if (!gib_list_length(filelist))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/imlib.c new/feh-2.24/src/imlib.c
--- old/feh-2.23.2/src/imlib.c  2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/imlib.c    2018-02-26 21:48:39.000000000 +0100
@@ -139,6 +139,18 @@
        return;
 }
 
+int feh_should_ignore_image(Imlib_Image * im)
+{
+       if (opt.filter_by_dimensions) {
+               unsigned int w = gib_imlib_image_get_width(im);
+               unsigned int h = gib_imlib_image_get_height(im);
+               if (w < opt.min_width || w > opt.max_width || h < 
opt.min_height || h > opt.max_height) {
+                       return 1;
+               }
+       }
+       return 0;
+}
+
 int feh_load_image_char(Imlib_Image * im, char *filename)
 {
        feh_file *file;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/options.c new/feh-2.24/src/options.c
--- old/feh-2.23.2/src/options.c        2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/options.c  2018-02-26 21:48:39.000000000 +0100
@@ -433,6 +433,7 @@
                        opt.debug = 1;
                        break;
                case '<':
+                       opt.filter_by_dimensions = 1;
                        XParseGeometry(optarg, &discard, &discard, 
&opt.max_width, &opt.max_height);
                        if (opt.max_width == 0)
                                opt.max_width = UINT_MAX;
@@ -440,6 +441,7 @@
                                opt.max_height = UINT_MAX;
                        break;
                case '>':
+                       opt.filter_by_dimensions = 1;
                        XParseGeometry(optarg, &discard, &discard, 
&opt.min_width, &opt.min_height);
                        break;
                case '.':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/options.h new/feh-2.24/src/options.h
--- old/feh-2.23.2/src/options.h        2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/options.h  2018-02-26 21:48:39.000000000 +0100
@@ -75,6 +75,7 @@
        unsigned char no_fehbg;
        unsigned char keep_zoom_vp;
        unsigned char insecure_ssl;
+       unsigned char filter_by_dimensions;
 
        char *output_file;
        char *output_dir;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/slideshow.c 
new/feh-2.24/src/slideshow.c
--- old/feh-2.23.2/src/slideshow.c      2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/slideshow.c        2018-02-26 21:48:39.000000000 +0100
@@ -49,7 +49,7 @@
                                opt.start_list_at);
 
        if (!opt.title)
-               opt.title = PACKAGE " [%u of %l] - %f",
+               opt.title = PACKAGE " [%u of %l] - %f";
 
        mode = "slideshow";
        for (; l; l = l->next) {
@@ -360,16 +360,20 @@
                        tzoom = winwid->zoom;
                }
 
-               if ((winwidget_loadimage(winwid, FEH_FILE(current_file->data)))
-                   != 0) {
+               if (winwidget_loadimage(winwid, FEH_FILE(current_file->data))) {
+                       int w = gib_imlib_image_get_width(winwid->im);
+                       int h = gib_imlib_image_get_height(winwid->im);
+                       if (feh_should_ignore_image(winwid->im)) {
+                               last = current_file;
+                               continue;
+                       }
                        winwid->mode = MODE_NORMAL;
                        winwid->file = current_file;
-                       if ((winwid->im_w != 
gib_imlib_image_get_width(winwid->im))
-                           || (winwid->im_h != 
gib_imlib_image_get_height(winwid->im)))
+                       if ((winwid->im_w != w) || (winwid->im_h != h))
                                winwid->had_resize = 1;
                        winwidget_reset_image(winwid);
-                       winwid->im_w = gib_imlib_image_get_width(winwid->im);
-                       winwid->im_h = gib_imlib_image_get_height(winwid->im);
+                       winwid->im_w = w;
+                       winwid->im_h = h;
                        if (opt.keep_zoom_vp) {
                                /* put back in: */
                                winwid->mode = tmode;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/feh-2.23.2/src/winwidget.c 
new/feh-2.24/src/winwidget.c
--- old/feh-2.23.2/src/winwidget.c      2018-02-12 22:13:54.000000000 +0100
+++ new/feh-2.24/src/winwidget.c        2018-02-26 21:48:39.000000000 +0100
@@ -115,7 +115,7 @@
        ret->file = list;
        ret->type = type;
 
-       if (winwidget_loadimage(ret, file) == 0) {
+       if ((winwidget_loadimage(ret, file) == 0) || 
feh_should_ignore_image(ret->im)) {
                winwidget_destroy(ret);
                return(NULL);
        }


Reply via email to