diff --git a/msgstore/znclog/reader.go b/msgstore/znclog/reader.go index 43cb5fd..5d7fe1f 100644 --- a/msgstore/znclog/reader.go +++ b/msgstore/znclog/reader.go @@ -16,8 +16,10 @@ var timestampPrefixLen = len("[01:02:03] ") func UnmarshalLine(line string, user *database.User, network *database.Network, entity string, ref time.Time, events bool) (*irc.Message, time.Time, error) { var hour, minute, second int _, err := fmt.Sscanf(line, "[%02d:%02d:%02d] ", &hour, &minute, &second) - if err != nil || len(line) < timestampPrefixLen { + if err != nil { return nil, time.Time{}, fmt.Errorf("malformed timestamp prefix: %v", err) + } else if len(line) < timestampPrefixLen { + return nil, time.Time{}, fmt.Errorf("malformed timestamp prefix: too short") } line = line[timestampPrefixLen:]