summaryrefslogtreecommitdiff
path: root/lisp/buff-menu.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/buff-menu.el')
-rw-r--r--lisp/buff-menu.el12
1 files changed, 10 insertions, 2 deletions
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 58fde695b39..627c02f6e62 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -353,14 +353,22 @@ It will be displayed by the \\<Buffer-menu-mode-map>\\[Buffer-menu-select] comma
"Cancel all requested operations on buffer on this line and move down.
Optional prefix arg means move up."
(interactive "P")
- (tabulated-list-set-col 0 " " t)
+ (Buffer-menu--unmark)
(forward-line (if backup -1 1)))
(defun Buffer-menu-backup-unmark ()
"Move up and cancel all requested operations on buffer on line above."
(interactive)
(forward-line -1)
- (tabulated-list-set-col 0 " " t))
+ (Buffer-menu--unmark))
+
+(defun Buffer-menu--unmark ()
+ (tabulated-list-set-col 0 " " t)
+ (let ((buf (Buffer-menu-buffer)))
+ (when buf
+ (if (buffer-modified-p buf)
+ (tabulated-list-set-col 2 "*" t)
+ (tabulated-list-set-col 2 " " t)))))
(defun Buffer-menu-delete (&optional arg)
"Mark the buffer on this Buffer Menu buffer line for deletion.