(compile_pattern_1): Treat non-nil and non-string of
search-spaces-regexp as nil.
This commit is contained in:
parent
9605d5675e
commit
d8c852509f
1 changed files with 10 additions and 3 deletions
13
src/search.c
13
src/search.c
|
@ -141,7 +141,11 @@ compile_pattern_1 (cp, pattern, translate, regp, posix)
|
|||
cp->posix = posix;
|
||||
cp->buf.multibyte = STRING_MULTIBYTE (pattern);
|
||||
cp->buf.charset_unibyte = charset_unibyte;
|
||||
cp->whitespace_regexp = Vsearch_spaces_regexp;
|
||||
if (STRINGP (Vsearch_spaces_regexp))
|
||||
cp->whitespace_regexp = Vsearch_spaces_regexp;
|
||||
else
|
||||
cp->whitespace_regexp = Qnil;
|
||||
|
||||
/* rms: I think BLOCK_INPUT is not needed here any more,
|
||||
because regex.c defines malloc to call xmalloc.
|
||||
Using BLOCK_INPUT here means the debugger won't run if an error occurs.
|
||||
|
@ -149,8 +153,11 @@ compile_pattern_1 (cp, pattern, translate, regp, posix)
|
|||
/* BLOCK_INPUT; */
|
||||
old = re_set_syntax (RE_SYNTAX_EMACS
|
||||
| (posix ? 0 : RE_NO_POSIX_BACKTRACKING));
|
||||
re_set_whitespace_regexp (NILP (Vsearch_spaces_regexp) ? NULL
|
||||
: SDATA (Vsearch_spaces_regexp));
|
||||
|
||||
if (STRINGP (Vsearch_spaces_regexp))
|
||||
re_set_whitespace_regexp (SDATA (Vsearch_spaces_regexp));
|
||||
else
|
||||
re_set_whitespace_regexp (NULL);
|
||||
|
||||
val = (char *) re_compile_pattern ((char *) SDATA (pattern),
|
||||
SBYTES (pattern), &cp->buf);
|
||||
|
|
Loading…
Add table
Reference in a new issue