summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/casefiddle.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/casefiddle.c b/src/casefiddle.c
index a630025fa19..1e3856100a0 100644
--- a/src/casefiddle.c
+++ b/src/casefiddle.c
@@ -35,6 +35,10 @@ casify_object (flag, obj)
register int i, c, len;
register int inword = flag == CASE_DOWN;
+ /* If the case table is flagged as modified, rescan it. */
+ if (NILP (XCHAR_TABLE (current_buffer->downcase_table)->extras[1]))
+ Fset_case_table (current_buffer->downcase_table);
+
while (1)
{
if (INTEGERP (obj))
@@ -133,6 +137,10 @@ casify_region (flag, b, e)
/* Not modifying because nothing marked */
return;
+ /* If the case table is flagged as modified, rescan it. */
+ if (NILP (XCHAR_TABLE (current_buffer->downcase_table)->extras[1]))
+ Fset_case_table (current_buffer->downcase_table);
+
validate_region (&b, &e);
start = XFASTINT (b);
end = XFASTINT (e);