in src/scanners.c [10235:10560]
bufsize_t _scan_html_block_end_3(const unsigned char *p) {
const unsigned char *marker = NULL;
const unsigned char *start = p;
{
unsigned char yych;
unsigned int yyaccept = 0;
static const unsigned char yybm[] = {
0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 128, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0,
};
yych = *p;
if (yych <= 0xDF) {
if (yych <= '>') {
if (yych <= 0x00)
goto yy615;
if (yych != '\n')
goto yy617;
} else {
if (yych <= '?')
goto yy618;
if (yych <= 0x7F)
goto yy617;
if (yych >= 0xC2)
goto yy619;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0)
goto yy620;
if (yych == 0xED)
goto yy622;
goto yy621;
} else {
if (yych <= 0xF0)
goto yy623;
if (yych <= 0xF3)
goto yy624;
if (yych <= 0xF4)
goto yy625;
}
}
yy615:
++p;
yy616 : { return 0; }
yy617:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '\n') {
if (yych <= 0x00)
goto yy616;
if (yych <= '\t')
goto yy627;
goto yy616;
} else {
if (yych <= 0x7F)
goto yy627;
if (yych <= 0xC1)
goto yy616;
if (yych <= 0xF4)
goto yy627;
goto yy616;
}
yy618:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= '=') {
if (yych <= 0x00)
goto yy616;
if (yych == '\n')
goto yy616;
goto yy627;
} else {
if (yych <= 0x7F) {
if (yych <= '>')
goto yy638;
goto yy627;
} else {
if (yych <= 0xC1)
goto yy616;
if (yych <= 0xF4)
goto yy627;
goto yy616;
}
}
yy619:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F)
goto yy616;
if (yych <= 0xBF)
goto yy626;
goto yy616;
yy620:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x9F)
goto yy616;
if (yych <= 0xBF)
goto yy631;
goto yy616;
yy621:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F)
goto yy616;
if (yych <= 0xBF)
goto yy631;
goto yy616;
yy622:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F)
goto yy616;
if (yych <= 0x9F)
goto yy631;
goto yy616;
yy623:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x8F)
goto yy616;
if (yych <= 0xBF)
goto yy633;
goto yy616;
yy624:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F)
goto yy616;
if (yych <= 0xBF)
goto yy633;
goto yy616;
yy625:
yyaccept = 0;
yych = *(marker = ++p);
if (yych <= 0x7F)
goto yy616;
if (yych <= 0x8F)
goto yy633;
goto yy616;
yy626:
++p;
yych = *p;
yy627:
if (yybm[0 + yych] & 64) {
goto yy626;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n')
goto yy628;
if (yych <= '?')
goto yy629;
} else {
if (yych <= 0xDF)
goto yy631;
if (yych <= 0xE0)
goto yy632;
goto yy633;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED)
goto yy634;
if (yych <= 0xEF)
goto yy633;
goto yy635;
} else {
if (yych <= 0xF3)
goto yy636;
if (yych <= 0xF4)
goto yy637;
}
}
yy628:
p = marker;
if (yyaccept == 0) {
goto yy616;
} else {
goto yy639;
}
yy629:
++p;
yych = *p;
if (yybm[0 + yych] & 128) {
goto yy629;
}
if (yych <= 0xDF) {
if (yych <= '=') {
if (yych <= 0x00)
goto yy628;
if (yych == '\n')
goto yy628;
goto yy626;
} else {
if (yych <= '>')
goto yy638;
if (yych <= 0x7F)
goto yy626;
if (yych <= 0xC1)
goto yy628;
}
} else {
if (yych <= 0xEF) {
if (yych <= 0xE0)
goto yy632;
if (yych == 0xED)
goto yy634;
goto yy633;
} else {
if (yych <= 0xF0)
goto yy635;
if (yych <= 0xF3)
goto yy636;
if (yych <= 0xF4)
goto yy637;
goto yy628;
}
}
yy631:
++p;
yych = *p;
if (yych <= 0x7F)
goto yy628;
if (yych <= 0xBF)
goto yy626;
goto yy628;
yy632:
++p;
yych = *p;
if (yych <= 0x9F)
goto yy628;
if (yych <= 0xBF)
goto yy631;
goto yy628;
yy633:
++p;
yych = *p;
if (yych <= 0x7F)
goto yy628;
if (yych <= 0xBF)
goto yy631;
goto yy628;
yy634:
++p;
yych = *p;
if (yych <= 0x7F)
goto yy628;
if (yych <= 0x9F)
goto yy631;
goto yy628;
yy635:
++p;
yych = *p;
if (yych <= 0x8F)
goto yy628;
if (yych <= 0xBF)
goto yy633;
goto yy628;
yy636:
++p;
yych = *p;
if (yych <= 0x7F)
goto yy628;
if (yych <= 0xBF)
goto yy633;
goto yy628;
yy637:
++p;
yych = *p;
if (yych <= 0x7F)
goto yy628;
if (yych <= 0x8F)
goto yy633;
goto yy628;
yy638:
yyaccept = 1;
marker = ++p;
yych = *p;
if (yybm[0 + yych] & 64) {
goto yy626;
}
if (yych <= 0xEC) {
if (yych <= 0xC1) {
if (yych <= '\n')
goto yy639;
if (yych <= '?')
goto yy629;
} else {
if (yych <= 0xDF)
goto yy631;
if (yych <= 0xE0)
goto yy632;
goto yy633;
}
} else {
if (yych <= 0xF0) {
if (yych <= 0xED)
goto yy634;
if (yych <= 0xEF)
goto yy633;
goto yy635;
} else {
if (yych <= 0xF3)
goto yy636;
if (yych <= 0xF4)
goto yy637;
}
}
yy639 : { return (bufsize_t)(p - start); }
}
}