4670 |
if (first_byte_caseless) |
if (first_byte_caseless) |
4671 |
while (start_match < end_subject && |
while (start_match < end_subject && |
4672 |
md->lcc[*start_match] != first_byte) |
md->lcc[*start_match] != first_byte) |
4673 |
start_match++; |
{ NEXTCHAR(start_match); } |
4674 |
else |
else |
4675 |
while (start_match < end_subject && *start_match != first_byte) |
while (start_match < end_subject && *start_match != first_byte) |
4676 |
start_match++; |
{ NEXTCHAR(start_match); } |
4677 |
} |
} |
4678 |
|
|
4679 |
/* Or to just after a linebreak for a multiline match if possible */ |
/* Or to just after a linebreak for a multiline match if possible */ |
4683 |
if (start_match > md->start_subject + start_offset) |
if (start_match > md->start_subject + start_offset) |
4684 |
{ |
{ |
4685 |
while (start_match <= end_subject && !WAS_NEWLINE(start_match)) |
while (start_match <= end_subject && !WAS_NEWLINE(start_match)) |
4686 |
start_match++; |
{ NEXTCHAR(start_match); } |
4687 |
|
|
4688 |
/* If we have just passed a CR and the newline option is ANY or ANYCRLF, |
/* If we have just passed a CR and the newline option is ANY or ANYCRLF, |
4689 |
and we are now at a LF, advance the match position by one more character. |
and we are now at a LF, advance the match position by one more character. |
4704 |
while (start_match < end_subject) |
while (start_match < end_subject) |
4705 |
{ |
{ |
4706 |
register unsigned int c = *start_match; |
register unsigned int c = *start_match; |
4707 |
if ((start_bits[c/8] & (1 << (c&7))) == 0) start_match++; else break; |
if ((start_bits[c/8] & (1 << (c&7))) == 0) |
4708 |
|
{ NEXTCHAR(start_match); } |
4709 |
|
else break; |
4710 |
} |
} |
4711 |
} |
} |
4712 |
|
|