# HG changeset patch # User Karl Heuer # Date 784857993 0 # Node ID 6cd89eaf36c9991c9825851d26e4046f84057084 # Parent 08efed8251d6760f40cd2967e4cbe4a4b8584799 (Fkill_all_local_variables): Use XBUFFER_LOCAL_VALUE, not XCONS. diff -r 08efed8251d6 -r 6cd89eaf36c9 src/buffer.c --- a/src/buffer.c Tue Nov 15 00:06:26 1994 +0000 +++ b/src/buffer.c Tue Nov 15 00:06:33 1994 +0000 @@ -1273,25 +1273,26 @@ sym = XCONS (XCONS (alist)->car)->car; /* Need not do anything if some other buffer's binding is now encached. */ - tem = XCONS (XCONS (XSYMBOL (sym)->value)->cdr)->car; + tem = XCONS (XBUFFER_LOCAL_VALUE (XSYMBOL (sym)->value)->cdr)->car; if (XBUFFER (tem) == current_buffer) { /* Symbol is set up for this buffer's old local value. Set it up for the current buffer with the default value. */ - tem = XCONS (XCONS (XSYMBOL (sym)->value)->cdr)->cdr; + tem = XCONS (XBUFFER_LOCAL_VALUE (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 - = do_symval_forwarding (XCONS (XSYMBOL (sym)->value)->car); + = do_symval_forwarding (XBUFFER_LOCAL_VALUE (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 (); + XCONS (XBUFFER_LOCAL_VALUE (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, + store_symval_forwarding (sym, XBUFFER_LOCAL_VALUE (XSYMBOL (sym)->value)->car, XCONS (tem)->cdr); } }