Commit b20759f9 authored by Eli Zaretskii's avatar Eli Zaretskii

Fix bug #17986 with infloop in redisplay when default-directory is nil.

 src/xdisp.c (decode_mode_spec): Call file-remote-p on the current
 buffer's default-directory only if it is a string.

 lisp/bindings.el (mode-line-remote): If default-directory is not a
 string, don't call file-remote-p on it; instead state in the
 help-echo that it is nil.
parent fb025526
2014-07-13 Eli Zaretskii <eliz@gnu.org>
* bindings.el (mode-line-remote): If default-directory is not a
string, don't call file-remote-p on it; instead state in the
help-echo that it is nil. (Bug#17986)
2014-07-12 Paul Eggert <eggert@cs.ucla.edu>
Fix bug: C-x v v discarded existing log message (Bug#17884).
......
......@@ -229,11 +229,13 @@ mnemonics of the following coding systems:
'help-echo (purecopy (lambda (window _object _point)
(format "%s"
(with-selected-window window
(concat
(if (file-remote-p default-directory)
"Current directory is remote: "
"Current directory is local: ")
default-directory)))))))
(if (stringp default-directory)
(concat
(if (file-remote-p default-directory)
"Current directory is remote: "
"Current directory is local: ")
default-directory)
"Current directory is nil")))))))
"Mode line construct to indicate a remote buffer.")
;;;###autoload
(put 'mode-line-remote 'risky-local-variable t)
......
2014-07-13 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (decode_mode_spec): Call file-remote-p on the current
buffer's default-directory only if it is a string. (Bug#17986)
2014-07-12 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (display_line): Don't call FETCH_BYTE with argument less
......
......@@ -22907,8 +22907,12 @@ decode_mode_spec (struct window *w, register int c, int field_width,
case '@':
{
ptrdiff_t count = inhibit_garbage_collection ();
Lisp_Object val = call1 (intern ("file-remote-p"),
BVAR (current_buffer, directory));
Lisp_Object curdir = BVAR (current_buffer, directory);
Lisp_Object val = Qnil;
if (STRINGP (curdir))
val = call1 (intern ("file-remote-p"), curdir);
unbind_to (count, Qnil);
if (NILP (val))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment