emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 3dcacb0: Fix broken logic in file-notify


From: Mattias Engdegård
Subject: [Emacs-diffs] master 3dcacb0: Fix broken logic in file-notify
Date: Sat, 18 May 2019 14:48:13 -0400 (EDT)

branch: master
commit 3dcacb09a921593509d0975e4f6a9434a54521ae
Author: Mattias Engdegård <address@hidden>
Commit: Mattias Engdegård <address@hidden>

    Fix broken logic in file-notify
    
    * lisp/filenotify.el (file-notify-callback):
    Repair warped condition that didn't match rename-to/from events correctly.
---
 lisp/filenotify.el | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/lisp/filenotify.el b/lisp/filenotify.el
index a6054c1..26b83ce 100644
--- a/lisp/filenotify.el
+++ b/lisp/filenotify.el
@@ -161,12 +161,14 @@ EVENT is the cadr of the event in 
`file-notify-handle-event'
       (while actions
         (let ((action (pop actions)))
           ;; Send pending event, if it doesn't match.
+          ;; We only handle {renamed,moved}-{from,to} pairs when these
+          ;; arrive in order without anything else in-between.
           (when (and file-notify--pending-event
-                     ;; The cookie doesn't match.
-                     (not (equal (file-notify--event-cookie
-                                  (car file-notify--pending-event))
-                                 (file-notify--event-cookie event)))
                      (or
+                      ;; The cookie doesn't match.
+                      (not (equal (file-notify--event-cookie
+                                   (car file-notify--pending-event))
+                                  (file-notify--event-cookie event)))
                       ;; inotify.
                       (and (eq (nth 1 (car file-notify--pending-event))
                                'moved-from)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]