| 6 |
and semantics are as close as possible to those of the Perl 5 language. |
and semantics are as close as possible to those of the Perl 5 language. |
| 7 |
|
|
| 8 |
Written by Philip Hazel |
Written by Philip Hazel |
| 9 |
Copyright (c) 1997-2006 University of Cambridge |
Copyright (c) 1997-2007 University of Cambridge |
| 10 |
|
|
| 11 |
----------------------------------------------------------------------------- |
----------------------------------------------------------------------------- |
| 12 |
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
| 1267 |
if (code[-1] >= 0xc0) code += _pcre_utf8_table4[code[-1] & 0x3f]; |
if (code[-1] >= 0xc0) code += _pcre_utf8_table4[code[-1] & 0x3f]; |
| 1268 |
break; |
break; |
| 1269 |
} |
} |
| 1270 |
#endif |
#endif |
| 1271 |
} |
} |
| 1272 |
} |
} |
| 1273 |
} |
} |
| 1332 |
if (code[-1] >= 0xc0) code += _pcre_utf8_table4[code[-1] & 0x3f]; |
if (code[-1] >= 0xc0) code += _pcre_utf8_table4[code[-1] & 0x3f]; |
| 1333 |
break; |
break; |
| 1334 |
} |
} |
| 1335 |
#endif |
#endif |
| 1336 |
} |
} |
| 1337 |
} |
} |
| 1338 |
} |
} |
| 5100 |
if (erroroffset == NULL) |
if (erroroffset == NULL) |
| 5101 |
{ |
{ |
| 5102 |
errorcode = ERR16; |
errorcode = ERR16; |
| 5103 |
goto PCRE_EARLY_ERROR_RETURN; |
goto PCRE_EARLY_ERROR_RETURN2; |
| 5104 |
} |
} |
| 5105 |
|
|
| 5106 |
*erroroffset = 0; |
*erroroffset = 0; |
| 5113 |
(*erroroffset = _pcre_valid_utf8((uschar *)pattern, -1)) >= 0) |
(*erroroffset = _pcre_valid_utf8((uschar *)pattern, -1)) >= 0) |
| 5114 |
{ |
{ |
| 5115 |
errorcode = ERR44; |
errorcode = ERR44; |
| 5116 |
goto PCRE_UTF8_ERROR_RETURN; |
goto PCRE_EARLY_ERROR_RETURN2; |
| 5117 |
} |
} |
| 5118 |
#else |
#else |
| 5119 |
if ((options & PCRE_UTF8) != 0) |
if ((options & PCRE_UTF8) != 0) |
| 5325 |
(pcre_free)(re); |
(pcre_free)(re); |
| 5326 |
PCRE_EARLY_ERROR_RETURN: |
PCRE_EARLY_ERROR_RETURN: |
| 5327 |
*erroroffset = ptr - (const uschar *)pattern; |
*erroroffset = ptr - (const uschar *)pattern; |
| 5328 |
#ifdef SUPPORT_UTF8 |
PCRE_EARLY_ERROR_RETURN2: |
|
PCRE_UTF8_ERROR_RETURN: |
|
|
#endif |
|
| 5329 |
*errorptr = error_texts[errorcode]; |
*errorptr = error_texts[errorcode]; |
| 5330 |
if (errorcodeptr != NULL) *errorcodeptr = errorcode; |
if (errorcodeptr != NULL) *errorcodeptr = errorcode; |
| 5331 |
return NULL; |
return NULL; |
| 5415 |
else printf("Req char = \\x%02x%s\n", ch, caseless); |
else printf("Req char = \\x%02x%s\n", ch, caseless); |
| 5416 |
} |
} |
| 5417 |
|
|
| 5418 |
pcre_printint(re, stdout); |
pcre_printint(re, stdout, TRUE); |
| 5419 |
|
|
| 5420 |
/* This check is done here in the debugging case so that the code that |
/* This check is done here in the debugging case so that the code that |
| 5421 |
was compiled can be seen. */ |
was compiled can be seen. */ |