File tree 1 file changed +5
-3
lines changed
1 file changed +5
-3
lines changed Original file line number Diff line number Diff line change @@ -69,9 +69,10 @@ static really_inline const char *scan_contiguous(
69
69
goto escaped ;
70
70
71
71
while (start < end ) {
72
- if (likely (classify [ (uint8_t )* start ] == CONTIGUOUS )) {
72
+ // null-byte is considered contiguous by the indexer (for now)
73
+ if (likely ((classify [ (uint8_t )* start ] & ~CONTIGUOUS ) == 0 )) {
73
74
if (unlikely (* start == '\\' )) {
74
- start ++ ;
75
+ start ++ ;
75
76
escaped :
76
77
if ((parser -> file -> state .is_escaped = (start == end )))
77
78
break ;
@@ -105,7 +106,8 @@ static really_inline void scan(
105
106
const int32_t code = classify [(uint8_t )* start ];
106
107
if (code == BLANK ) {
107
108
start ++ ;
108
- } else if (code == CONTIGUOUS ) {
109
+ } else if ((code & ~CONTIGUOUS ) == 0 ) {
110
+ // null-byte is considered contiguous by the indexer (for now)
109
111
* parser -> file -> fields .tail ++ = start ;
110
112
start = scan_contiguous (parser , start , end );
111
113
} else if (code == LINE_FEED ) {
You can’t perform that action at this time.
0 commit comments