# HG changeset patch # User Kenichi Handa # Date 1029832354 0 # Node ID 8772b1a86905c092588a471db07b77446202950c # Parent 7f85fb19352a03632ae7d2468fe650ed96d3359f (Freplace_match): Fix for the unibyte case. diff -r 7f85fb19352a -r 8772b1a86905 src/search.c --- a/src/search.c Tue Aug 20 08:20:31 2002 +0000 +++ b/src/search.c Tue Aug 20 08:32:34 2002 +0000 @@ -2245,14 +2245,20 @@ { /* Decide how to casify by examining the matched text. */ int last; + int multibyte; pos = search_regs.start[sub]; last = search_regs.end[sub]; if (NILP (string)) - pos_byte = CHAR_TO_BYTE (pos); + { + pos_byte = CHAR_TO_BYTE (pos); + multibyte = ! NILP (current_buffer->enable_multibyte_characters); else - pos_byte = string_char_to_byte (string, pos); + { + pos_byte = string_char_to_byte (string, pos); + multibyte = STRING_MULTIBYTE (string); + } prevc = '\n'; case_action = all_caps; @@ -2273,6 +2279,10 @@ } else FETCH_STRING_CHAR_ADVANCE (c, string, pos, pos_byte); + if (! multibyte) + { + MAKE_CHAR_MULTIBYTE (c); + } if (LOWERCASEP (c)) {