diff options
-rw-r--r-- | src/scanners.c | 45 | ||||
-rw-r--r-- | src/scanners.re | 4 |
2 files changed, 25 insertions, 24 deletions
diff --git a/src/scanners.c b/src/scanners.c index 440cf83..4f619e7 100644 --- a/src/scanners.c +++ b/src/scanners.c @@ -7914,7 +7914,7 @@ int _scan_html_tag(const unsigned char *p) static const unsigned char yybm[] = { /* table 1 .. 8: 0 */ 0, 230, 230, 230, 230, 230, 230, 230, - 230, 199, 199, 230, 230, 230, 230, 230, + 230, 199, 199, 199, 199, 199, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 199, 230, 70, 230, 230, 230, 230, 134, @@ -8006,7 +8006,7 @@ yy749: if (yych <= '9') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy748; - if (yych <= '\n') goto yy790; + if (yych <= '\r') goto yy790; goto yy748; } else { if (yych <= ' ') goto yy790; @@ -8174,7 +8174,7 @@ yy784: } if (yych <= 0x1F) { if (yych <= 0x08) goto yy756; - if (yych >= '\v') goto yy756; + if (yych >= 0x0E) goto yy756; } else { if (yych <= ' ') goto yy786; if (yych == '>') goto yy758; @@ -8185,7 +8185,7 @@ yy786: yych = *p; if (yych <= 0x1F) { if (yych <= 0x08) goto yy756; - if (yych <= '\n') goto yy786; + if (yych <= '\r') goto yy786; goto yy756; } else { if (yych <= ' ') goto yy786; @@ -8198,7 +8198,7 @@ yy788: if (yych <= '9') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy756; - if (yych >= '\v') goto yy756; + if (yych >= 0x0E) goto yy756; } else { if (yych <= ' ') goto yy790; if (yych <= '.') goto yy756; @@ -8222,7 +8222,7 @@ yy790: if (yych <= ':') { if (yych <= ' ') { if (yych <= 0x08) goto yy756; - if (yych <= '\n') goto yy790; + if (yych <= '\r') goto yy790; if (yych <= 0x1F) goto yy756; goto yy790; } else { @@ -8257,7 +8257,7 @@ yy793: goto yy793; } if (yych <= '.') { - if (yych <= '\n') { + if (yych <= '\r') { if (yych <= 0x08) goto yy756; } else { if (yych != ' ') goto yy756; @@ -8278,7 +8278,7 @@ yy795: if (yych <= '<') { if (yych <= ' ') { if (yych <= 0x08) goto yy756; - if (yych <= '\n') goto yy795; + if (yych <= '\r') goto yy795; if (yych <= 0x1F) goto yy756; goto yy795; } else { @@ -8363,7 +8363,7 @@ yy805: yych = *p; if (yych <= ' ') { if (yych <= 0x08) goto yy756; - if (yych <= '\n') goto yy790; + if (yych <= '\r') goto yy790; if (yych <= 0x1F) goto yy756; goto yy790; } else { @@ -8384,7 +8384,7 @@ yy806: if (yych <= 0x00) goto yy756; goto yy799; } else { - if (yych <= '\n') goto yy806; + if (yych <= '\r') goto yy806; if (yych <= 0x1F) goto yy799; goto yy806; } @@ -8421,7 +8421,7 @@ yy808: yych = *p; if (yych <= '/') { if (yych <= '!') { - if (yych <= '\n') { + if (yych <= '\r') { if (yych <= 0x00) goto yy756; if (yych <= 0x08) goto yy799; } else { @@ -8470,7 +8470,7 @@ yy810: if (yych <= 0x00) goto yy756; goto yy799; } else { - if (yych <= '\n') goto yy810; + if (yych <= '\r') goto yy810; if (yych <= 0x1F) goto yy799; goto yy810; } @@ -8515,7 +8515,7 @@ yy812: if (yych <= 0x00) goto yy756; goto yy799; } else { - if (yych <= '\n') goto yy812; + if (yych <= '\r') goto yy812; if (yych <= 0x1F) goto yy799; goto yy812; } @@ -8620,7 +8620,7 @@ yy821: if (yych <= '/') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy822; - if (yych <= '\n') goto yy982; + if (yych <= '\r') goto yy982; } else { if (yych <= ' ') goto yy982; if (yych >= '/') goto yy982; @@ -8880,7 +8880,7 @@ yy838: yy839: yych = *++p; if (yych <= '=') { - if (yych <= '\n') { + if (yych <= '\r') { if (yych <= 0x08) goto yy822; goto yy859; } else { @@ -9116,7 +9116,7 @@ yy858: yych = *++p; if (yych <= 0x1F) { if (yych <= 0x08) goto yy822; - if (yych >= '\v') goto yy822; + if (yych >= 0x0E) goto yy822; } else { if (yych <= ' ') goto yy859; if (yych != '>') goto yy822; @@ -9257,7 +9257,7 @@ yy883: yy884: yych = *++p; if (yych <= '=') { - if (yych <= '\n') { + if (yych <= '\r') { if (yych <= 0x08) goto yy822; goto yy859; } else { @@ -9461,7 +9461,7 @@ yy923: yy924: yych = *++p; if (yych <= '=') { - if (yych <= '\n') { + if (yych <= '\r') { if (yych <= 0x08) goto yy822; goto yy859; } else { @@ -9729,7 +9729,7 @@ yy981: yych = *++p; if (yych <= ' ') { if (yych <= 0x08) goto yy822; - if (yych <= '\n') goto yy982; + if (yych <= '\r') goto yy982; if (yych <= 0x1F) goto yy822; } else { if (yych <= '/') { @@ -9876,7 +9876,7 @@ yy1007: if (yych <= '/') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy822; - if (yych <= '\n') goto yy982; + if (yych <= '\r') goto yy982; goto yy822; } else { if (yych <= ' ') goto yy982; @@ -10082,7 +10082,7 @@ yy1047: if (yych <= '/') { if (yych <= 0x1F) { if (yych <= 0x08) goto yy822; - if (yych <= '\n') goto yy982; + if (yych <= '\r') goto yy982; goto yy822; } else { if (yych <= ' ') goto yy982; @@ -10992,7 +10992,7 @@ int _scan_spacechars(const unsigned char *p) unsigned char yych; static const unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, - 0, 128, 128, 0, 0, 0, 0, 0, + 0, 128, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, @@ -11030,6 +11030,7 @@ int _scan_spacechars(const unsigned char *p) if (yych <= '\t') goto yy1171; goto yy1172; } else { + if (yych <= '\r') goto yy1171; if (yych == ' ') goto yy1171; goto yy1174; } diff --git a/src/scanners.re b/src/scanners.re index 28a6991..c6ebae3 100644 --- a/src/scanners.re +++ b/src/scanners.re @@ -24,7 +24,7 @@ int _scan_at(int (*scanner)(const unsigned char *), cmark_chunk *c, int offset) wordchar = [^\x00-\x20]; - spacechar = [ \t\n]; + spacechar = [ \t\v\f\r\n]; reg_char = [^\\()\x00-\x20]; @@ -155,7 +155,7 @@ int _scan_spacechars(const unsigned char *p) { const unsigned char *start = p; \ /*!re2c - [ \t\n]* { return (p - start); } + [ \t\v\f\r\n]* { return (p - start); } . { return 0; } */ } |