aboutsummaryrefslogtreecommitdiffstats
path: root/main.c
diff options
context:
space:
mode:
authorBert Münnich <ber.t@posteo.de>2017-05-17 20:16:16 +0200
committerBert Münnich <ber.t@posteo.de>2017-05-17 20:20:39 +0200
commita20173a42df64515c0a5d1c5fba0c056a633a441 (patch)
tree9c8107929e11d0726fc17f07966ac85eccece677 /main.c
parentde3d7827ce13a52b1bcf3b72e9dc2ee89152dea6 (diff)
downloadnsxiv-a20173a42df64515c0a5d1c5fba0c056a633a441.tar.zst
Detect all file overwrites in autoreload_inotify
mv(1) inside the same filesystem was not detected. Supporting this case made it necessary to always watch the directory. Turns out the logic and state keeping between arl_setup() and arl_handle() is easier, when using different watch descriptors for the file and the directory and not using a oneshot descriptor for the file. Requiring an absolute canonical path for arl_setup() simplifies dir and base name splitting. No need for dirname(3) and basename(3) anymore.
Diffstat (limited to 'main.c')
-rw-r--r--main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/main.c b/main.c
index 70f7521..aa11616 100644
--- a/main.c
+++ b/main.c
@@ -723,7 +723,7 @@ void run(void)
if (info.fd != -1 && FD_ISSET(info.fd, &fds))
read_info();
if (arl.fd != -1 && FD_ISSET(arl.fd, &fds)) {
- if (arl_handle(&arl, files[fileidx].path)) {
+ if (arl_handle(&arl)) {
/* when too fast, imlib2 can't load the image */
nanosleep(&ten_ms, NULL);
load_image(fileidx);