summaryrefslogtreecommitdiffstats
path: root/Modules/regexpr.c
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/regexpr.c')
-rw-r--r--Modules/regexpr.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/Modules/regexpr.c b/Modules/regexpr.c
index 64e199d..55b1dff 100644
--- a/Modules/regexpr.c
+++ b/Modules/regexpr.c
@@ -1271,11 +1271,12 @@ char *re_compile_pattern(regex, size, bufp)
}
case Rbol:
{
- if (!beginning_context)
+ if (!beginning_context) {
if (regexp_context_indep_ops)
goto op_error;
else
goto normal_char;
+ }
opcode = Cbol;
goto store_opcode;
}
@@ -1289,11 +1290,12 @@ char *re_compile_pattern(regex, size, bufp)
((regexp_syntax & RE_NO_BK_PARENS)?
(regex[pos] == ')'):
(pos+1 < size && regex[pos] == '\134' &&
- regex[pos+1] == ')'))))
+ regex[pos+1] == ')')))) {
if (regexp_context_indep_ops)
goto op_error;
else
goto normal_char;
+ }
opcode = Ceol;
goto store_opcode;
/* NOTREACHED */
@@ -1301,11 +1303,12 @@ char *re_compile_pattern(regex, size, bufp)
}
case Roptional:
{
- if (beginning_context)
+ if (beginning_context) {
if (regexp_context_indep_ops)
goto op_error;
else
goto normal_char;
+ }
if (CURRENT_LEVEL_START == pattern_offset)
break; /* ignore empty patterns for ? */
ALLOC(3);
@@ -1316,11 +1319,12 @@ char *re_compile_pattern(regex, size, bufp)
case Rstar:
case Rplus:
{
- if (beginning_context)
+ if (beginning_context) {
if (regexp_context_indep_ops)
goto op_error;
else
goto normal_char;
+ }
if (CURRENT_LEVEL_START == pattern_offset)
break; /* ignore empty patterns for + and * */
ALLOC(9);
@@ -2061,11 +2065,12 @@ int re_search(bufp,
else
dir = 1;
- if (anchor == 2)
+ if (anchor == 2) {
if (pos != 0)
return -1;
else
range = 0;
+ }
for (; range >= 0; range--, pos += dir)
{