Subject: bug#21432: 25.0.50; file-notify-rm-watch (inotify) errors if watched dir is deleted

From: Eli Zaretskii <[email-masked]>
Date: Tue, 15 Sep 2015 10:38:46 +0300

> From: Michael Albinus <[email-masked]>
> Cc: Tassilo Horn <[email-masked]>,  [email-masked]
> Date: Mon, 14 Sep 2015 22:23:36 +0200
> 
> I've adapted `file-notify-test04-file-validity' and
> `file-notify-test05-dir-validity', and they pass the tests now for the
> inotify case. Hopefully, it is the same for w32notify.

No, it fails:

  Test file-notify-test04-file-validity condition:
      (ert-test-failed
       ((should
	 (equal '...
	  (mapcar ... events)))
	:form
	(equal
	 (created changed deleted)
	 nil)
	:value nil :explanation
	(different-types
	 (created changed deleted)
	 nil)))
     FAILED   9/12  file-notify-test04-file-validity

I guess the file-notify--test-with-events macro doesn't allow events
to come in on w32, but I have no idea how to debug this.

Moreover, file-notify-test05-dir-validity also fails:

  Test file-notify-test05-dir-validity condition:
      (ert-test-failed
       ((should-not
	 (file-notify-valid-p file-notify--test-desc))
	:form
	(file-notify-valid-p 91670672)
	:value t))
     FAILED  11/12  file-notify-test05-dir-validity

The latter could be because of the batch mode (it passes when I invoke
it interactively).  But the former fails in interactive session as
well, so it's a real problem.  Suggestions for debugging it are
welcome.