GNU bug report logs -
#12387
24.2.50; File column printed by list-buffers is bad if done in dired-mode
Previous Next
Reported by: emacs18 <at> gmail.com
Date: Sat, 8 Sep 2012 15:52:02 UTC
Severity: normal
Merged with 12662
Found in version 24.2.50
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #11 received at 12387 <at> debbugs.gnu.org (full text, mbox):
> Seems that format-mode-line (as of ~ 1 month) fails to preserve
> current-buffer:
>
> Evalute in *scratch*:
>
> (let ((buffer (get-buffer "*Messages*")))
> (with-current-buffer buffer
> (message "1 %s" (current-buffer))
> (format-mode-line mode-name nil nil buffer)
> (message "2 %s" (current-buffer))))
Looks like a fallout from my
2012-08-20 Martin Rudalics <rudalics <at> gmx.at>
* window.c (select_window): Always make selected window's buffer
current.
Does the patch below fix it?
martin
=== modified file 'src/xdisp.c'
--- src/xdisp.c 2012-09-12 00:14:50 +0000
+++ src/xdisp.c 2012-09-13 09:31:34 +0000
@@ -21039,8 +21039,7 @@
: EQ (face, Qtool_bar) ? TOOL_BAR_FACE_ID
: DEFAULT_FACE_ID;
- if (XBUFFER (buffer) != current_buffer)
- old_buffer = current_buffer;
+ old_buffer = current_buffer;
/* Save things including mode_line_proptrans_alist,
and set that to nil so that we don't alter the outer value. */
@@ -21051,8 +21050,7 @@
mode_line_proptrans_alist = Qnil;
Fselect_window (window, Qt);
- if (old_buffer)
- set_buffer_internal_1 (XBUFFER (buffer));
+ set_buffer_internal_1 (XBUFFER (buffer));
init_iterator (&it, w, -1, -1, NULL, face_id);
This bug report was last modified 12 years and 272 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.