diff --git a/src/slideshow.c b/src/slideshow.c index 7dcf7917b6d085c00b9b0e6c92fc038c40e6998b..d79c8598a43492f9ef32d258cecda4255ff5809d 100644 --- a/src/slideshow.c +++ b/src/slideshow.c @@ -555,6 +555,14 @@ void feh_filelist_image_remove(winwidget winwid, char do_delete) gib_list *doomed; doomed = current_file; + /* + * work around feh_list_jump exiting if cycle_once is enabled + * and no further files are left (we need to delete first) + */ + if (opt.cycle_once && ! doomed->next && do_delete) { + feh_file_rm_and_free(filelist, doomed); + exit(0); + } slideshow_change_image(winwid, SLIDE_NEXT, 0); if (do_delete) filelist = feh_file_rm_and_free(filelist, doomed);