From 02db9ca205d5e006d72764462bcc60466351b8c5 Mon Sep 17 00:00:00 2001 From: Lizzy Fleckenstein Date: Wed, 1 Apr 2026 21:15:58 +0200 Subject: fix: getdents64() returns written bytes, not number of entries --- watchdog.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/watchdog.c b/watchdog.c index 2e8117a..4a81272 100644 --- a/watchdog.c +++ b/watchdog.c @@ -120,7 +120,7 @@ int main(int argc, char **argv) size_t num_pids = 0; char *dirptr = dirbuffer; - for (size_t i = 0; i < (size_t) n_dirent; i++) { + while (dirptr < dirbuffer + n_dirent) { struct linux_dirent64 *d = (void*) dirptr; int pid; if ((d->d_type == DT_DIR || d->d_type == DT_UNKNOWN) && (pid = atoi(d->d_name))) { -- cgit v1.2.3