Add additional defense against 0-length log segfaults

Signed-off-by: Matthew Heon <mheon@redhat.com>
This commit is contained in:
Matthew Heon
2019-03-03 23:30:45 -05:00
parent 429f2e63a0
commit ff609a5ade

View File

@ -313,11 +313,11 @@ func (w *logWriter) write(msg *logMessage) error {
if w.opts.Timestamps && !w.doAppend {
prefix := append([]byte(msg.timestamp.Format(timeFormat)), delimiter[0])
line = append(prefix, line...)
if line[len(line)-1] != '\n' {
if len(line) > 0 && line[len(line)-1] != '\n' {
w.doAppend = true
}
}
if w.doAppend && line[len(line)-1] == '\n' {
if w.doAppend && len(line) > 0 && line[len(line)-1] == '\n' {
w.doAppend = false
}
// If the line is longer than the remaining bytes, cut it.