in apt/message_reader.go [99:121]
func (r *MessageReader) parseField(line string) error {
if line == "" {
return errors.New("empty message field")
}
line = strings.TrimSpace(line)
parts := strings.SplitN(line, ":", 2)
if len(parts) < 2 {
return fmt.Errorf("malformed field %q, not enough parts", line)
}
if r.message.fields == nil {
r.message.fields = make(map[string][]string)
}
key := strings.TrimSpace(parts[0])
value := strings.TrimSpace(parts[1])
if key == "" || value == "" {
return fmt.Errorf("malformed field %q, empty key or value", line)
}
fieldlist := r.message.fields[key]
fieldlist = append(fieldlist, value)
r.message.fields[key] = fieldlist
return nil
}