From 64b885b6a9fbb5522654af919a3c4ce719f11c2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bert=20M=C3=BCnnich?= Date: Thu, 26 Oct 2017 22:20:39 +0200 Subject: Fix navigating from last to previous image over invalid files --- Makefile | 2 +- main.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 4e3390a..f14f65c 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -VERSION = git-20171024 +VERSION = git-20171026 srcdir = . VPATH = $(srcdir) diff --git a/main.c b/main.c index 8eea930..ebe14c9 100644 --- a/main.c +++ b/main.c @@ -159,8 +159,8 @@ void remove_file(int n, bool manual) memmove(files + n, files + n + 1, (filecnt - n - 1) * sizeof(*files)); } filecnt--; - if (fileidx >= filecnt) - fileidx = filecnt - 1; + if (n < fileidx) + fileidx--; if (n < alternate) alternate--; } @@ -290,6 +290,7 @@ end: void load_image(int new) { + bool prev = new < fileidx; static int current; if (new < 0 || new >= filecnt) @@ -307,7 +308,7 @@ void load_image(int new) remove_file(new, false); if (new >= filecnt) new = filecnt - 1; - else if (new > 0 && new < fileidx) + else if (new > 0 && prev) new--; } files[new].flags &= ~FF_WARN; -- cgit v1.2.3