1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-30 09:00:31 -08:00

Sync.to HEAD.

This commit is contained in:
Kenichi Handa 2004-04-12 23:46:36 +00:00
parent bd7ca8fe77
commit 76fc1ea2e2

View file

@ -2323,13 +2323,21 @@ since only regular expressions have distinguished subexpressions. */)
substart = search_regs.start[sub];
subend = search_regs.end[sub];
}
else if (c >= '1' && c <= '9' && c <= search_regs.num_regs + '0')
else if (c >= '1' && c <= '9')
{
if (search_regs.start[c - '0'] >= 0)
if (search_regs.start[c - '0'] >= 0
&& c <= search_regs.num_regs + '0')
{
substart = search_regs.start[c - '0'];
subend = search_regs.end[c - '0'];
}
else
{
/* If that subexp did not match,
replace \\N with nothing. */
substart = 0;
subend = 0;
}
}
else if (c == '\\')
delbackslash = 1;
@ -2507,8 +2515,16 @@ since only regular expressions have distinguished subexpressions. */)
}
if (really_changed)
newtext = make_string (substed, substed_len);
{
if (buf_multibyte)
{
int nchars = multibyte_chars_in_text (substed, substed_len);
newtext = make_multibyte_string (substed, nchars, substed_len);
}
else
newtext = make_unibyte_string (substed, substed_len);
}
xfree (substed);
}
@ -2900,3 +2916,6 @@ syms_of_search ()
defsubr (&Sset_match_data);
defsubr (&Sregexp_quote);
}
/* arch-tag: a6059d79-0552-4f14-a2cb-d379a4e3c78f
(do not change this comment) */