Commit 542143d7 authored by Richard M. Stallman's avatar Richard M. Stallman
Browse files

(Fkill_all_local_variables): Store each var's current value

in the buffer's alist entry, before reverting to the default value.
parent 1db87953
......@@ -1149,8 +1149,16 @@ a non-nil `permanent-local' property are not eliminated by this function.")
Set it up for the current buffer with the default value. */
tem = XCONS (XCONS (XSYMBOL (sym)->value)->cdr)->cdr;
/* Store the symbol's current value into the alist entry
it is currently set up for. This is so that, if the
local is marked permanent, and we make it local again below,
we don't lose the value. */
XCONS (XCONS (tem)->car)->cdr = XCONS (XSYMBOL (sym)->value)->car;
/* Switch to the symbol's default-value alist entry. */
XCONS (tem)->car = tem;
/* Mark it as current for the current buffer. */
XCONS (XCONS (XSYMBOL (sym)->value)->cdr)->car = Fcurrent_buffer ();
/* Store the current value into any forwarding in the symbol. */
store_symval_forwarding (sym, XCONS (XSYMBOL (sym)->value)->car,
XCONS (tem)->cdr);
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