emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r118344: Fix bug#18964


From: Dmitry Gutov
Subject: [Emacs-diffs] trunk r118344: Fix bug#18964
Date: Mon, 10 Nov 2014 01:30:07 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 118344
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/18964
committer: Dmitry Gutov <address@hidden>
branch nick: trunk
timestamp: Mon 2014-11-10 03:29:58 +0200
message:
  Fix bug#18964
  
  * lisp/vc/vc-dir.el (vc-dir-hide-state): Also hide `ignored' items when
  no state is specified.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/vc/vc-dir.el              vcdir.el-20091113204419-o5vbwnq5f7feedwu-8693
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2014-11-10 00:04:30 +0000
+++ b/lisp/ChangeLog    2014-11-10 01:29:58 +0000
@@ -1,3 +1,8 @@
+2014-11-10  Dmitry Gutov  <address@hidden>
+
+       * vc/vc-dir.el (vc-dir-hide-state): Also hide `ignored' items when
+       no state is specified.  (Bug#18964)
+
 2014-11-09  Eric Ludlam  <address@hidden>
 
        * emacs-lisp/eieio-custom.el (eieio-customize-object): Set

=== modified file 'lisp/vc/vc-dir.el'
--- a/lisp/vc/vc-dir.el 2014-09-05 17:37:12 +0000
+++ b/lisp/vc/vc-dir.el 2014-11-10 01:29:58 +0000
@@ -1125,18 +1125,18 @@
   "Hide items that are in STATE from display.
 See `vc-state' for valid values of STATE.
 
-If STATE is nil, default it to up-to-date.
+If STATE is nil, hide both `up-to-date' and `ignored' items.
 
 Interactively, if `current-prefix-arg' is non-nil, set STATE to
-state of item at point.  Otherwise, set STATE to up-to-date."
+state of item at point, if any."
   (interactive (list
                (and current-prefix-arg
                     ;; Command is prefixed.  Infer STATE from point.
                     (let ((node (ewoc-locate vc-ewoc)))
                       (and node (vc-dir-fileinfo->state (ewoc-data node)))))))
-  ;; If STATE is un-specified, use up-to-date.
-  (setq state (or state 'up-to-date))
-  (message "Hiding items in state \"%s\"" state)
+  (if state
+      (message "Hiding items in state \"%s\"" state)
+    (message "Hiding up-to-date and ignored items"))
   (let ((crt (ewoc-nth vc-ewoc -1))
        (first (ewoc-nth vc-ewoc 0)))
     ;; Go over from the last item to the first and remove the
@@ -1157,8 +1157,10 @@
                     ;; Next item is a directory.
                     (vc-dir-fileinfo->directory (ewoc-data next))))
               ;; Remove files in specified STATE.  STATE can be a
-              ;; symbol or a user-name.
-              (equal (vc-dir-fileinfo->state data) state))
+              ;; symbol, a user-name, or nil.
+               (if state
+                   (equal (vc-dir-fileinfo->state data) state)
+                 (memq (vc-dir-fileinfo->state data) '(up-to-date ignored))))
          (ewoc-delete vc-ewoc crt))
        (setq crt prev)))))
 


reply via email to

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