File tree Expand file tree Collapse file tree 1 file changed +4
-3
lines changed
Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -56,7 +56,7 @@ impl<'buf> Decoder<'buf> for Delimiter<'_> {
5656 }
5757 Some ( last_byte) => {
5858 while self . seen < src. len ( ) {
59- if src[ self . seen ] == * last_byte {
59+ if src[ self . seen ] == * last_byte && self . delimiter . len ( ) <= self . seen + 1 {
6060 let src_delimiter =
6161 & src[ self . seen + 1 - self . delimiter . len ( ) ..self . seen + 1 ] ;
6262
@@ -202,8 +202,9 @@ mod test {
202202 b"Hey" . to_vec( ) ,
203203 ] ;
204204
205- let decoder = Delimiter :: new ( b"###" ) ;
206- let encoder = Delimiter :: new ( b"###" ) ;
205+ // TODO: use delimiters with different lengths in the fuzzer
206+ let decoder = Delimiter :: new ( b"######" ) ;
207+ let encoder = Delimiter :: new ( b"######" ) ;
207208 let map = |item : & [ u8 ] | item. to_vec ( ) ;
208209
209210 sink_stream ! ( encoder, decoder, items, map) ;
You can’t perform that action at this time.
0 commit comments