diff options
| author | Andrea Corallo | 2020-11-22 22:23:16 +0100 |
|---|---|---|
| committer | Andrea Corallo | 2020-11-22 22:23:16 +0100 |
| commit | 033e96055cc172d8d84adc128aee7f7d9889bb00 (patch) | |
| tree | 4e6e0a24c60f4c8776fb574bf31727dcaf4af4ba /src/data.c | |
| parent | 6781cd670d1487bbf0364d80de68ca9733342769 (diff) | |
| parent | 9b6ad3107f93d40f82c3c53dc0984c6d70aded83 (diff) | |
| download | emacs-033e96055cc172d8d84adc128aee7f7d9889bb00.tar.gz emacs-033e96055cc172d8d84adc128aee7f7d9889bb00.zip | |
Merge remote-tracking branch 'savannah/master' into HEAD
Diffstat (limited to 'src/data.c')
| -rw-r--r-- | src/data.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/data.c b/src/data.c index c6629dd5f29..1435cb03779 100644 --- a/src/data.c +++ b/src/data.c | |||
| @@ -1501,10 +1501,14 @@ set_internal (Lisp_Object symbol, Lisp_Object newval, Lisp_Object where, | |||
| 1501 | { | 1501 | { |
| 1502 | int offset = XBUFFER_OBJFWD (innercontents)->offset; | 1502 | int offset = XBUFFER_OBJFWD (innercontents)->offset; |
| 1503 | int idx = PER_BUFFER_IDX (offset); | 1503 | int idx = PER_BUFFER_IDX (offset); |
| 1504 | if (idx > 0 | 1504 | if (idx > 0 && bindflag == SET_INTERNAL_SET |
| 1505 | && bindflag == SET_INTERNAL_SET | 1505 | && !PER_BUFFER_VALUE_P (buf, idx)) |
| 1506 | && !let_shadows_buffer_binding_p (sym)) | 1506 | { |
| 1507 | SET_PER_BUFFER_VALUE_P (buf, idx, 1); | 1507 | if (let_shadows_buffer_binding_p (sym)) |
| 1508 | set_default_internal (symbol, newval, bindflag); | ||
| 1509 | else | ||
| 1510 | SET_PER_BUFFER_VALUE_P (buf, idx, 1); | ||
| 1511 | } | ||
| 1508 | } | 1512 | } |
| 1509 | 1513 | ||
| 1510 | if (voide) | 1514 | if (voide) |