diff options
| author | Karl Heuer | 1996-01-23 18:06:54 +0000 |
|---|---|---|
| committer | Karl Heuer | 1996-01-23 18:06:54 +0000 |
| commit | 79c83e032911b95090408a38d7c4d96ddb4e4661 (patch) | |
| tree | a038f0da64f43d657655be5535b1f30c8832e225 /src/data.c | |
| parent | 051e70762e8fb90be307175f1bc9d1a07c9638c0 (diff) | |
| download | emacs-79c83e032911b95090408a38d7c4d96ddb4e4661.tar.gz emacs-79c83e032911b95090408a38d7c4d96ddb4e4661.zip | |
(kill-local-variable): didn't update the value of
forwarded objects.
Diffstat (limited to 'src/data.c')
| -rw-r--r-- | src/data.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/data.c b/src/data.c index 263a21bebc1..8b9a158ef27 100644 --- a/src/data.c +++ b/src/data.c | |||
| @@ -1362,14 +1362,18 @@ From now on the default value will apply in this buffer.") | |||
| 1362 | current_buffer->local_var_alist | 1362 | current_buffer->local_var_alist |
| 1363 | = Fdelq (tem, current_buffer->local_var_alist); | 1363 | = Fdelq (tem, current_buffer->local_var_alist); |
| 1364 | 1364 | ||
| 1365 | /* Make sure symbol does not think it is set up for this buffer; | 1365 | /* If the symbol is set up for the current buffer, recompute its |
| 1366 | force it to look once again for this buffer's value */ | 1366 | value. We have to do it now, or else forwarded objects won't |
| 1367 | work right. */ | ||
| 1367 | { | 1368 | { |
| 1368 | Lisp_Object *pvalbuf; | 1369 | Lisp_Object *pvalbuf; |
| 1369 | valcontents = XSYMBOL (variable)->value; | 1370 | valcontents = XSYMBOL (variable)->value; |
| 1370 | pvalbuf = &XCONS (XBUFFER_LOCAL_VALUE (valcontents)->cdr)->car; | 1371 | pvalbuf = &XCONS (XBUFFER_LOCAL_VALUE (valcontents)->cdr)->car; |
| 1371 | if (current_buffer == XBUFFER (*pvalbuf)) | 1372 | if (current_buffer == XBUFFER (*pvalbuf)) |
| 1372 | *pvalbuf = Qnil; | 1373 | { |
| 1374 | *pvalbuf = Qnil; | ||
| 1375 | Fsymbol_value(variable); | ||
| 1376 | } | ||
| 1373 | } | 1377 | } |
| 1374 | 1378 | ||
| 1375 | return variable; | 1379 | return variable; |