From 782195a3c31a79428874a32e0264c0aa97a664f7 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 15 Nov 2010 00:47:29 +0100 Subject: [PATCH 1/1] path: always look for IN_ATTRIB since deletion is signalled that way --- TODO | 2 +- src/path.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/TODO b/TODO index 645b075f3..f68e6dece 100644 --- a/TODO +++ b/TODO @@ -80,7 +80,7 @@ * automatically determine TERM= based on tty name. (TERM=linux vs. TERM=vt100-nav) -* declare /etc/system-release cross-distro standard +* declare /etc/os-release cross-distro standard Pre v12: diff --git a/src/path.c b/src/path.c index f62157e80..3e2856920 100644 --- a/src/path.c +++ b/src/path.c @@ -181,9 +181,9 @@ static void path_unwatch_one(Path *p, PathSpec *s) { static int path_watch_one(Path *p, PathSpec *s) { static const int flags_table[_PATH_TYPE_MAX] = { - [PATH_EXISTS] = IN_DELETE_SELF|IN_MOVE_SELF, + [PATH_EXISTS] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB, [PATH_CHANGED] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB|IN_CLOSE_WRITE|IN_CREATE|IN_DELETE|IN_MOVED_FROM|IN_MOVED_TO, - [PATH_DIRECTORY_NOT_EMPTY] = IN_DELETE_SELF|IN_MOVE_SELF|IN_CREATE|IN_MOVED_TO + [PATH_DIRECTORY_NOT_EMPTY] = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB|IN_CREATE|IN_MOVED_TO }; bool exists = false; @@ -221,9 +221,9 @@ static int path_watch_one(Path *p, PathSpec *s) { *slash = 0; - flags = IN_DELETE_SELF|IN_MOVE_SELF; + flags = IN_DELETE_SELF|IN_MOVE_SELF|IN_ATTRIB; if (!exists) - flags |= IN_CREATE | IN_MOVED_TO | IN_ATTRIB; + flags |= IN_CREATE | IN_MOVED_TO; if (inotify_add_watch(s->inotify_fd, k, flags) >= 0) exists = true; -- 2.30.2