From 910c747a2f19004db7dc5753a3f5e52acf62e0be Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Fri, 8 Sep 2006 12:07:07 +0000 Subject: [PATCH] (looking_at_1, string_match_1, search_command): Make syntax table's canon table point to eqv table. --- src/search.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/search.c b/src/search.c index 5d532a9d8dd..2063e7d95ba 100644 --- a/src/search.c +++ b/src/search.c @@ -167,6 +167,9 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte) cp->posix = posix; cp->buf.multibyte = multibyte; cp->whitespace_regexp = Vsearch_spaces_regexp; + /* Doing BLOCK_INPUT here has the effect that + the debugger won't run if an error occurs. + Why is BLOCK_INPUT needed here? */ BLOCK_INPUT; old = re_set_syntax (RE_SYNTAX_EMACS | (posix ? 0 : RE_NO_POSIX_BACKTRACKING)); @@ -284,6 +287,10 @@ looking_at_1 (string, posix) if (running_asynch_code) save_search_regs (); + /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ + XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] + = current_buffer->case_eqv_table; + CHECK_STRING (string); bufp = compile_pattern (string, &search_regs, (!NILP (current_buffer->case_fold_search) @@ -391,6 +398,10 @@ string_match_1 (regexp, string, start, posix) pos_byte = string_char_to_byte (string, pos); } + /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ + XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] + = current_buffer->case_eqv_table; + bufp = compile_pattern (regexp, &search_regs, (!NILP (current_buffer->case_fold_search) ? current_buffer->case_canon_table : Qnil), @@ -930,6 +941,10 @@ search_command (string, bound, noerror, count, direction, RE, posix) lim_byte = CHAR_TO_BYTE (lim); } + /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ + XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] + = current_buffer->case_eqv_table; + np = search_buffer (string, PT, PT_BYTE, lim, lim_byte, n, RE, (!NILP (current_buffer->case_fold_search) ? current_buffer->case_canon_table -- 2.39.2