diff options
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) | |||
| 481 | b->abbrev_table = Vfundamental_mode_abbrev_table; | 481 | b->abbrev_table = Vfundamental_mode_abbrev_table; |
| 482 | b->mode_name = QSFundamental; | 482 | b->mode_name = QSFundamental; |
| 483 | b->minor_modes = Qnil; | 483 | b->minor_modes = Qnil; |
| 484 | |||
| 485 | /* If the standard case table has been altered and invalidated, | ||
| 486 | fix up its insides first. */ | ||
| 487 | if (! (CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[0]) | ||
| 488 | && CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[1]) | ||
| 489 | && CHAR_TABLE_P (XCHAR_TABLE (Vascii_downcase_table)->extras[2]))) | ||
| 490 | Fset_standard_case_table (Vascii_downcase_table); | ||
| 491 | |||
| 484 | b->downcase_table = Vascii_downcase_table; | 492 | b->downcase_table = Vascii_downcase_table; |
| 485 | b->upcase_table = XCHAR_TABLE (Vascii_downcase_table)->extras[0]; | 493 | b->upcase_table = XCHAR_TABLE (Vascii_downcase_table)->extras[0]; |
| 486 | b->case_canon_table = XCHAR_TABLE (Vascii_downcase_table)->extras[1]; | 494 | b->case_canon_table = XCHAR_TABLE (Vascii_downcase_table)->extras[1]; |