summaryrefslogtreecommitdiff
path: root/regexec.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-02-05 14:25:36 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-02-05 14:25:36 +0000
commitebc501f0d71ea004ab6861cc2b4fb1f7e49fd2ae (patch)
tree3e150f9929abb5749f396b62d54ebdaf0e417ecf /regexec.c
parent235effa7b5c9fbd981ec8a3ce25cf49408967844 (diff)
downloadperl-ebc501f0d71ea004ab6861cc2b4fb1f7e49fd2ae.tar.gz
EBCDIC: SHARP S is different.
p4raw-id: //depot/perl@14561
Diffstat (limited to 'regexec.c')
-rw-r--r--regexec.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/regexec.c b/regexec.c
index 830488afc1..8bd2284f29 100644
--- a/regexec.c
+++ b/regexec.c
@@ -924,8 +924,11 @@ S_find_byclass(pTHX_ regexp * prog, regnode *c, char *s, char *strend, char *sta
STRLEN skip = do_utf8 ? UTF8SKIP(s) : 1;
if (reginclass(c, (U8*)s, do_utf8) ||
- (ANYOF_UNICODE_FOLD_SHARP_S(c, s, strend) &&
- (skip = 2))) {
+ (ANYOF_FOLD_SHARP_S(c, s, strend) &&
+ /* The assignment of 2 is intentional:
+ * for the sharp s, the skip is 2. */
+ (skip = SHARP_S_SKIP)
+ )) {
if (tmp && (norun || regtry(prog, s)))
goto got_it;
else
@@ -2439,8 +2442,8 @@ S_regmatch(pTHX_ regnode *prog)
/* If we might have the case of the German sharp s
* in a casefolding Unicode character class. */
- if (ANYOF_UNICODE_FOLD_SHARP_S(scan, locinput, PL_regeol)) {
- locinput += 2;
+ if (ANYOF_FOLD_SHARP_S(scan, locinput, PL_regeol)) {
+ locinput += SHARP_S_SKIP;
nextchr = UCHARAT(locinput);
}
else