codec/mjpeg/lex.go: returning nil error from Lex if we get io.EOF on reading bytes

This commit is contained in:
Saxon 2019-10-03 00:32:34 +09:30
parent 8df837ee49
commit 1c9146eec0
1 changed files with 8 additions and 2 deletions

View File

@ -63,8 +63,11 @@ func Lex(dst io.Writer, src io.Reader, delay time.Duration) error {
return nil
}
if err != nil {
if err != io.EOF {
return err
}
return nil
}
if !bytes.Equal(buf, []byte{0xff, 0xd8}) {
return fmt.Errorf("parser: not MJPEG frame start: %#v", buf)
}
@ -72,8 +75,11 @@ func Lex(dst io.Writer, src io.Reader, delay time.Duration) error {
for {
b, err := r.ReadByte()
if err != nil {
if err != io.EOF {
return err
}
return nil
}
buf = append(buf, b)
if last == 0xff && b == 0xd9 {
break