Clear the vc-state cache when returning nil

* lisp/vc/vc-hg.el (vc-hg-registered):
Clear the vc-state cache when returning nil.
This commit is contained in:
Dmitry Gutov 2020-11-10 18:08:13 +02:00
parent b5b0f07b0a
commit bce0055265

View file

@ -223,7 +223,10 @@ If `ask', you will be prompted for a branch type."
"Return non-nil if FILE is registered with hg."
(when (vc-hg-root file) ; short cut
(let ((state (vc-state file 'Hg))) ; expensive
(and state (not (memq state '(ignored unregistered)))))))
(if (memq state '(ignored unregistered nil))
;; Clear the cache for proper fallback to another backend.
(ignore (vc-file-setprop file 'vc-state nil))
t))))
(defun vc-hg-state (file)
"Hg-specific version of `vc-state'."