From: Tino Calancha Date: Wed, 7 Dec 2016 11:37:01 +0000 (+0900) Subject: ibuffer: compare marks with EQ X-Git-Tag: emacs-26.0.90~1192 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=586867e6815d6e43bfaa4191bc62de60c00fbce3;p=emacs.git ibuffer: compare marks with EQ * lisp/ibuffer (ibuffer-update-title-and-summary, ibuffer-redisplay-current) (ibuffer-buffer-name-face, ibuffer-unmark-all) (ibuffer-count-deletion-lines, ibuffer-buffer-names-with-mark): Use 'eq' instead of 'char-equal' when comparing mark characters (Bug#25000). * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000): Update test result as pass. --- diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index 16fbf5799ff..8898afd4fbf 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -1240,7 +1240,7 @@ a new window in the current frame, splitting vertically." (let ((ibuffer-buffer-names-with-mark-result nil)) (ibuffer-map-lines-nomodify (lambda (buf mk) - (when (char-equal mark mk) + (when (eq mark mk) (push (buffer-name buf) ibuffer-buffer-names-with-mark-result)))) ibuffer-buffer-names-with-mark-result)) @@ -1255,15 +1255,15 @@ a new window in the current frame, splitting vertically." (if all (ibuffer-map-lines-nomodify (lambda (_buf mark) - (not (char-equal mark ?\s)))) + (not (eq mark ?\s)))) (ibuffer-map-lines-nomodify (lambda (_buf mark) - (char-equal mark ibuffer-marked-char))))) + (eq mark ibuffer-marked-char))))) (defsubst ibuffer-count-deletion-lines () (ibuffer-map-lines-nomodify (lambda (_buf mark) - (char-equal mark ibuffer-deletion-char)))) + (eq mark ibuffer-deletion-char)))) (defsubst ibuffer-map-deletion-lines (func) (ibuffer-map-on-mark ibuffer-deletion-char func)) @@ -1342,26 +1342,26 @@ Otherwise, toggle read only status." (if (= (ibuffer-count-marked-lines t) 0) (message "No buffers marked; use 'm' to mark a buffer") (cond - ((char-equal mark ibuffer-marked-char) + ((eq mark ibuffer-marked-char) (ibuffer-map-marked-lines (lambda (_buf _mark) (ibuffer-set-mark-1 ?\s) t))) - ((char-equal mark ibuffer-deletion-char) + ((eq mark ibuffer-deletion-char) (ibuffer-map-deletion-lines (lambda (_buf _mark) (ibuffer-set-mark-1 ?\s) t))) - ((not (char-equal mark ?\r)) + ((not (eq mark ?\r)) (ibuffer-map-lines (lambda (_buf cmark) - (when (char-equal cmark mark) + (when (eq cmark mark) (ibuffer-set-mark-1 ?\s)) t))) (t (ibuffer-map-lines (lambda (_buf mark) - (when (not (char-equal mark ?\s)) + (when (not (eq mark ?\s)) (ibuffer-set-mark-1 ?\s)) t))))) (ibuffer-redisplay t)) @@ -1912,9 +1912,9 @@ If point is on a group name, this function operates on that group." (_ (concat str left right))))) (defun ibuffer-buffer-name-face (buf mark) - (cond ((char-equal mark ibuffer-marked-char) + (cond ((eq mark ibuffer-marked-char) ibuffer-marked-face) - ((char-equal mark ibuffer-deletion-char) + ((eq mark ibuffer-deletion-char) ibuffer-deletion-face) (t (let ((level -1) @@ -1958,7 +1958,7 @@ If point is on a group name, this function operates on that group." (defun ibuffer-map-on-mark (mark func) (ibuffer-map-lines (lambda (buf mk) - (if (char-equal mark mk) + (if (eq mark mk) (funcall func buf mark) nil)))) @@ -2185,8 +2185,8 @@ the value of point at the beginning of the line for that buffer." (buffer-substring (point) (line-end-position))))) (apply #'insert (mapcar (lambda (c) - (if (not (or (char-equal c ?\s) - (char-equal c ?\n))) + (if (not (or (eq c ?\s) + (eq c ?\n))) ?- ?\s)) str))) diff --git a/test/lisp/ibuffer-tests.el b/test/lisp/ibuffer-tests.el index 6d5187a2b77..da8c7024463 100644 --- a/test/lisp/ibuffer-tests.el +++ b/test/lisp/ibuffer-tests.el @@ -50,7 +50,6 @@ (ert-deftest ibuffer-test-Bug25000 () "Test for http://debbugs.gnu.org/25000 ." - :expected-result :failed (let ((case-fold-search t) (buf1 (generate-new-buffer "ibuffer-test-Bug25000-buf1")) (buf2 (generate-new-buffer "ibuffer-test-Bug25000-buf2")))