diff options
author | Richard M. Stallman <rms@gnu.org> | 1995-10-22 16:40:53 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1995-10-22 16:40:53 +0000 |
commit | 47301d53cc8a6a9b2e8cdddbcc5d0c76a89f11d6 (patch) | |
tree | 24d742bbd88eda6429cf30c1ac927a1f7774bd56 /src/buffer.c | |
parent | a2c6104e369dae85948971befe0208cbb69fbe05 (diff) | |
download | emacs-47301d53cc8a6a9b2e8cdddbcc5d0c76a89f11d6.tar.gz |
(reset_buffer_local_variables): Call
Fset_standard_case_table if std case table seems to have been changed.
Diffstat (limited to 'src/buffer.c')
-rw-r--r-- | src/buffer.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c index c533d4343fa..008dedde462 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -481,6 +481,14 @@ reset_buffer_local_variables (b) b->abbrev_table = Vfundamental_mode_abbrev_table; b->mode_name = QSFundamental; b->minor_modes = Qnil; + + /* If the standard case table has been altered and invalidated, + fix up its insides first. */ + if (! (CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[0]) + && CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[1]) + && CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[2]))) + Fset_standard_case_table (Vascii_downcase_table); + b->downcase_table = Vascii_downcase_table; b->upcase_table = XCHAR_TABLE (Vascii_downcase_table)->extras[0]; b->case_canon_table = XCHAR_TABLE (Vascii_downcase_table)->extras[1]; |