changeset 72725:ef0421dfce16

(looking_at_1, string_match_1, search_command): Make syntax table's canon table point to eqv table.
author Richard M. Stallman <rms@gnu.org>
date Fri, 08 Sep 2006 12:07:07 +0000
parents 63d522f27621
children c7ba95ddeb1d
files src/search.c
diffstat 1 files changed, 15 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/search.c	Fri Sep 08 12:05:56 2006 +0000
+++ b/src/search.c	Fri Sep 08 12:07:07 2006 +0000
@@ -167,6 +167,9 @@
   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 @@
   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 @@
       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 @@
 	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