1
0
mirror of https://github.com/amir20/dozzle.git synced 2025-12-26 15:16:27 +01:00

fix: fixes reading incorrect number of bytes. see #2431 (#2434)

This commit is contained in:
Amir Raminfar
2023-10-20 11:51:06 -07:00
committed by GitHub
parent 79f8efd909
commit 01f3c5ee15

View File

@@ -83,8 +83,8 @@ func (g *EventGenerator) consumeReader() {
}
if readerError != nil {
log.Debugf("reader error: %v", readerError)
if readerError != ErrBadHeader {
log.Debugf("reader error: %v", readerError)
g.Errors <- readerError
close(g.buffer)
break
@@ -120,11 +120,12 @@ func readEvent(reader *bufio.Reader, tty bool) (string, StdType, error) {
}
return message, streamType, nil
} else {
n, err := reader.Read(header)
n, err := io.ReadFull(reader, header)
if err != nil {
return "", streamType, err
}
if n != 8 {
log.Warnf("unable to read header: %v", header)
message, _ := reader.ReadString('\n')
return message, streamType, ErrBadHeader
}
@@ -135,8 +136,7 @@ func readEvent(reader *bufio.Reader, tty bool) (string, StdType, error) {
case 2:
streamType = STDERR
default:
message, _ := reader.ReadString('\n')
return message, streamType, ErrBadHeader
log.Warnf("unknown stream type: %v", header[0])
}
count := binary.BigEndian.Uint32(header[4:])