summaryrefslogtreecommitdiff
path: root/lisp/vc-dispatcher.el
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2008-06-08 15:31:08 +0000
committerAndreas Schwab <schwab@suse.de>2008-06-08 15:31:08 +0000
commit64137cbc075a5471394de6fc97f8c452559aea2d (patch)
treeec4b87d259d894811ef9e42b79eb1375d8cdff45 /lisp/vc-dispatcher.el
parent77003b236b92a337fd9403764f5e56f7fa743fed (diff)
downloademacs-64137cbc075a5471394de6fc97f8c452559aea2d.tar.gz
(vc-dir-children-marked-p): Fix child check.
Diffstat (limited to 'lisp/vc-dispatcher.el')
-rw-r--r--lisp/vc-dispatcher.el5
1 files changed, 2 insertions, 3 deletions
diff --git a/lisp/vc-dispatcher.el b/lisp/vc-dispatcher.el
index 7179d77e8f4..6bd43cb2644 100644
--- a/lisp/vc-dispatcher.el
+++ b/lisp/vc-dispatcher.el
@@ -1057,15 +1057,14 @@ If a prefix argument is given, move by that many lines."
(defun vc-dir-children-marked-p (arg)
;; Return nil if none of the children of arg is marked.
- (let* ((argdir (vc-dir-node-directory arg))
- (arglen (length argdir))
+ (let* ((argdir-re (concat "\\`" (regexp-quote (vc-dir-node-directory arg))))
(is-child t)
(crt arg)
data dir)
(while (and is-child (setq crt (ewoc-next vc-ewoc crt)))
(setq data (ewoc-data crt))
(setq dir (vc-dir-node-directory crt))
- (if (string-equal argdir (substring dir 0 arglen))
+ (if (string-match argdir-re dir)
(when (vc-dir-fileinfo->marked data)
(error "Cannot mark `%s', child `%s' marked"
(vc-dir-fileinfo->name (ewoc-data arg))