summaryrefslogtreecommitdiff
path: root/toke.c
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1998-05-15 01:34:53 +0000
committerGurusamy Sarathy <gsar@cpan.org>1998-05-15 01:34:53 +0000
commit48c036b1eb8f866b948f33704ee6152323a5aad9 (patch)
tree6e91e012efd9b99283cda0a0e070452f8d41eb8a /toke.c
parentee580363108be8ac33155650c6c18d2e5cf051f3 (diff)
downloadperl-48c036b1eb8f866b948f33704ee6152323a5aad9.tar.gz
[win32] merge change#905 from maintbranch, minor fixes to get
clean build+test on Solaris p4raw-link: @905 on //depot/maint-5.004/perl: 15e73149a8419f18d739227762eab108524cec56 p4raw-id: //depot/win32/perl@976
Diffstat (limited to 'toke.c')
-rw-r--r--toke.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/toke.c b/toke.c
index 2282ef7e54..2f687e8691 100644
--- a/toke.c
+++ b/toke.c
@@ -4858,6 +4858,8 @@ void pmflag(U16 *pmfl, int ch)
*pmfl |= PMf_MULTILINE;
else if (ch == 's')
*pmfl |= PMf_SINGLELINE;
+ else if (ch == 't')
+ *pmfl |= PMf_TAINTMEM;
else if (ch == 'x')
*pmfl |= PMf_EXTENDED;
}
@@ -4879,7 +4881,7 @@ scan_pat(char *start)
pm = (PMOP*)newPMOP(OP_MATCH, 0);
if (multi_open == '?')
pm->op_pmflags |= PMf_ONCE;
- while (*s && strchr("iogcmsx", *s))
+ while (*s && strchr("iogcmstx", *s))
pmflag(&pm->op_pmflags,*s++);
pm->op_pmpermflags = pm->op_pmflags;
@@ -4924,13 +4926,15 @@ scan_subst(char *start)
multi_start = first_start; /* so whole substitution is taken together */
pm = (PMOP*)newPMOP(OP_SUBST, 0);
- while (*s && strchr("iogcmsex", *s)) {
+ while (*s) {
if (*s == 'e') {
s++;
es++;
}
- else
+ else if (strchr("iogcmstx", *s))
pmflag(&pm->op_pmflags,*s++);
+ else
+ break;
}
if (es) {