aboutsummaryrefslogtreecommitdiffstats
path: root/src/data.c
diff options
context:
space:
mode:
authorStefan Monnier2003-03-25 16:30:15 +0000
committerStefan Monnier2003-03-25 16:30:15 +0000
commit999e64847e279e0b10464311207cc1cb4622dd43 (patch)
tree25c3b1fe3ead92f063ecb7d410c16291aabb874d /src/data.c
parenta9b9a78056f5fe6a2eb1e226fa47515825184492 (diff)
downloademacs-999e64847e279e0b10464311207cc1cb4622dd43.tar.gz
emacs-999e64847e279e0b10464311207cc1cb4622dd43.zip
(store_symval_forwarding): Delete special read-only
hack for type == -1, since we now use ->constant instead. (Fkill_local_variable): Don't use XBUFFER if it can be nil.
Diffstat (limited to 'src/data.c')
-rw-r--r--src/data.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/data.c b/src/data.c
index 2c7442c61aa..4d3be52075f 100644
--- a/src/data.c
+++ b/src/data.c
@@ -897,10 +897,6 @@ store_symval_forwarding (symbol, valcontents, newval, buf)
897 int offset = XBUFFER_OBJFWD (valcontents)->offset; 897 int offset = XBUFFER_OBJFWD (valcontents)->offset;
898 Lisp_Object type; 898 Lisp_Object type;
899 899
900 type = PER_BUFFER_TYPE (offset);
901 if (XINT (type) == -1)
902 error ("Variable %s is read-only", SDATA (SYMBOL_NAME (symbol)));
903
904 if (! NILP (type) && ! NILP (newval) 900 if (! NILP (type) && ! NILP (newval)
905 && XTYPE (newval) != XINT (type)) 901 && XTYPE (newval) != XINT (type))
906 buffer_slot_type_mismatch (offset); 902 buffer_slot_type_mismatch (offset);
@@ -1616,10 +1612,11 @@ From now on the default value will apply in this buffer. Return VARIABLE. */)
1616 loaded, recompute its value. We have to do it now, or else 1612 loaded, recompute its value. We have to do it now, or else
1617 forwarded objects won't work right. */ 1613 forwarded objects won't work right. */
1618 { 1614 {
1619 Lisp_Object *pvalbuf; 1615 Lisp_Object *pvalbuf, buf;
1620 valcontents = SYMBOL_VALUE (variable); 1616 valcontents = SYMBOL_VALUE (variable);
1621 pvalbuf = &XBUFFER_LOCAL_VALUE (valcontents)->buffer; 1617 pvalbuf = &XBUFFER_LOCAL_VALUE (valcontents)->buffer;
1622 if (current_buffer == XBUFFER (*pvalbuf)) 1618 XSETBUFFER (buf, current_buffer);
1619 if (EQ (buf, *pvalbuf))
1623 { 1620 {
1624 *pvalbuf = Qnil; 1621 *pvalbuf = Qnil;
1625 XBUFFER_LOCAL_VALUE (valcontents)->found_for_buffer = 0; 1622 XBUFFER_LOCAL_VALUE (valcontents)->found_for_buffer = 0;