# HG changeset patch # User Karl Heuer # Date 762044670 0 # Node ID 0bfb70d74790a3f84c7798432cd43e3e357edc56 # Parent a6805e98cb7f0b452d86a396e68755a850f0735c *** empty log message *** diff --git a/regex.c b/regex.c --- a/regex.c +++ b/regex.c @@ -4463,8 +4463,10 @@ mcnt = (int) Sword; matchsyntax: PREFETCH (); - if (SYNTAX (*d++) != (enum syntaxcode) mcnt) - goto fail; + /* Can't use *d++ here; SYNTAX may be an unsafe macro. */ + d++; + if (SYNTAX (d[-1]) != (enum syntaxcode) mcnt) + goto fail; SET_REGS_MATCHED (); break; @@ -4478,8 +4480,10 @@ mcnt = (int) Sword; matchnotsyntax: PREFETCH (); - if (SYNTAX (*d++) == (enum syntaxcode) mcnt) - goto fail; + /* Can't use *d++ here; SYNTAX may be an unsafe macro. */ + d++; + if (SYNTAX (d[-1]) == (enum syntaxcode) mcnt) + goto fail; SET_REGS_MATCHED (); break;