diff options
author | NRK <nrk@disroot.org> | 2024-06-16 23:07:33 +0200 |
---|---|---|
committer | NRK <nrk@disroot.org> | 2024-06-16 23:07:33 +0200 |
commit | faf67fcc62307ad8847a78939d5ed222a53e5ea8 (patch) | |
tree | 4b76752a5963784a33cf6ec8ba376119d28913a4 | |
parent | 420a0a245591ea73f86ebfb90de207a8e67e6cca (diff) | |
download | nsxiv-faf67fcc62307ad8847a78939d5ed222a53e5ea8.tar.zst |
fix: autoreload when directory is root (#498)
for cases like "/file", `base - filepath` will result in 0
instead of 1.
regression introduced in: 94d531fd827457cf71fe7f3808c7a2f531dceba5
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/498
Reviewed-by: eylles <eylles@noreply.codeberg.org>
-rw-r--r-- | autoreload.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/autoreload.c b/autoreload.c index 8b3f6da..8325210 100644 --- a/autoreload.c +++ b/autoreload.c @@ -86,7 +86,7 @@ void arl_add(arl_t *arl, const char *filepath) base = strrchr(filepath, '/'); assert(base != NULL); /* filepath must be result of `realpath(3)` */ - dir = arl_scratch_push(filepath, base - filepath); + dir = arl_scratch_push(filepath, MAX(base - filepath, 1)); add_watch(arl->fd, &arl->wd_dir, dir, IN_CREATE | IN_MOVED_TO); arl->filename = arl_scratch_push(base + 1, strlen(base + 1)); } |