2073 |
< -1 => some kind of unexpected problem |
< -1 => some kind of unexpected problem |
2074 |
*/ |
*/ |
2075 |
|
|
2076 |
PCRE_DATA_SCOPE int |
PCRE_EXP_DEFN int |
2077 |
pcre_dfa_exec(const pcre *argument_re, const pcre_extra *extra_data, |
pcre_dfa_exec(const pcre *argument_re, const pcre_extra *extra_data, |
2078 |
const char *subject, int length, int start_offset, int options, int *offsets, |
const char *subject, int length, int start_offset, int options, int *offsets, |
2079 |
int offsetcount, int *workspace, int wscount) |
int offsetcount, int *workspace, int wscount) |
2166 |
/* Handle different types of newline. The three bits give eight cases. If |
/* Handle different types of newline. The three bits give eight cases. If |
2167 |
nothing is set at run time, whatever was used at compile time applies. */ |
nothing is set at run time, whatever was used at compile time applies. */ |
2168 |
|
|
2169 |
switch ((((options & PCRE_NEWLINE_BITS) == 0)? re->options : options) & |
switch ((((options & PCRE_NEWLINE_BITS) == 0)? re->options : (pcre_uint32)options) & |
2170 |
PCRE_NEWLINE_BITS) |
PCRE_NEWLINE_BITS) |
2171 |
{ |
{ |
2172 |
case 0: newline = NEWLINE; break; /* Compile-time default */ |
case 0: newline = NEWLINE; break; /* Compile-time default */ |
2311 |
|
|
2312 |
/* If we have just passed a CR and the newline option is ANY, and we |
/* If we have just passed a CR and the newline option is ANY, and we |
2313 |
are now at a LF, advance the match position by one more character. */ |
are now at a LF, advance the match position by one more character. */ |
2314 |
|
|
2315 |
if (current_subject[-1] == '\r' && |
if (current_subject[-1] == '\r' && |
2316 |
md->nltype == NLTYPE_ANY && |
md->nltype == NLTYPE_ANY && |
2317 |
current_subject < end_subject && |
current_subject < end_subject && |