1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-04 11:40:22 +00:00

Fix filtering of file notification events in autorevert.el.

lisp/autorevert.el (auto-revert-notify-handler): Fix filtering of
 file notification by ACTION. For filtering by file name, compare
 only the non-directory part of the file name.
This commit is contained in:
Eli Zaretskii 2013-01-12 13:25:39 +02:00
parent d122dcbf33
commit 86fbb162a4
2 changed files with 14 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2013-01-12 Eli Zaretskii <eliz@gnu.org>
* autorevert.el (auto-revert-notify-handler): Fix filtering of
file notification by ACTION. For filtering by file name, compare
only the non-directory part of the file name.
2013-01-12 Stefan Monnier <monnier@iro.umontreal.ca>
* autorevert.el: Use cl-lib instead of cl.

View File

@ -528,13 +528,17 @@ will use an up-to-date value of `auto-revert-interval'"
;; Check, that event is meant for us.
;; TODO: Filter events which stop watching, like `move' or `removed'.
(cl-assert descriptor)
(when (featurep 'inotify) (cl-assert (memq 'modify descriptor)))
(when (featurep 'w32notify) (cl-assert (eq 'modified descriptor)))
(when (featurep 'inotify) (cl-assert (memq 'modify action)))
(when (featurep 'w32notify) (cl-assert (eq 'modified action)))
(cl-assert (bufferp buffer))
(when (stringp file)
(cl-assert (string-equal
(directory-file-name file)
(directory-file-name (buffer-file-name buffer)))))
;; w32notify returns the basename of the file
;; without its leading directories; inotify
;; returns its full absolute file name.
(file-name-nondirectory (directory-file-name file))
(file-name-nondirectory (directory-file-name
(buffer-file-name buffer))))))
;; Mark buffer modified.
(with-current-buffer buffer