op = OP(scan);
/* Check for character class with NL added. */
- if (!reg_line_lbr && WITH_NL(op) && *reginput == NUL
- && reglnum <= reg_maxline)
+ if (!reg_line_lbr && WITH_NL(op) && REG_MULTI
+ && *reginput == NUL && reglnum <= reg_maxline)
{
reg_nextline();
}
break;
case NEWL:
- if ((c != NUL || reglnum > reg_maxline || reg_line_lbr)
- && (c != '\n' || !reg_line_lbr))
+ if ((c != NUL || !REG_MULTI || reglnum > reg_maxline
+ || reg_line_lbr) && (c != '\n' || !reg_line_lbr))
status = RA_NOMATCH;
else if (reg_line_lbr)
ADVANCE_REGINPUT();
++count;
mb_ptr_adv(scan);
}
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr
- || count == maxcount)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr || count == maxcount)
break;
++count; /* count the line-break */
reg_nextline();
}
else if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
}
else if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
}
else if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
{
if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
#endif
if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
#endif
if (*scan == NUL)
{
- if (!WITH_NL(OP(p)) || reglnum > reg_maxline || reg_line_lbr)
+ if (!REG_MULTI || !WITH_NL(OP(p)) || reglnum > reg_maxline
+ || reg_line_lbr)
break;
reg_nextline();
scan = reginput;
case NEWL:
while (count < maxcount
- && ((*scan == NUL && reglnum <= reg_maxline && !reg_line_lbr)
- || (*scan == '\n' && reg_line_lbr)))
+ && ((*scan == NUL && reglnum <= reg_maxline && !reg_line_lbr
+ && REG_MULTI) || (*scan == '\n' && reg_line_lbr)))
{
count++;
if (reg_line_lbr)