config: RawConfig merge should only set unknown keys non-nil if

non-empty
This commit is contained in:
Mitchell Hashimoto 2016-10-19 15:21:09 -07:00
parent a89dcfd1b1
commit fee0351c66
No known key found for this signature in database
GPG Key ID: 744E147AA52F5B0A
1 changed files with 12 additions and 10 deletions

View File

@ -191,17 +191,19 @@ func (r *RawConfig) Merge(other *RawConfig) *RawConfig {
} }
// Build the unknown keys // Build the unknown keys
unknownKeys := make(map[string]struct{}) if len(r.unknownKeys) > 0 || len(other.unknownKeys) > 0 {
for _, k := range r.unknownKeys { unknownKeys := make(map[string]struct{})
unknownKeys[k] = struct{}{} for _, k := range r.unknownKeys {
} unknownKeys[k] = struct{}{}
for _, k := range other.unknownKeys { }
unknownKeys[k] = struct{}{} for _, k := range other.unknownKeys {
} unknownKeys[k] = struct{}{}
}
result.unknownKeys = make([]string, 0, len(unknownKeys)) result.unknownKeys = make([]string, 0, len(unknownKeys))
for k, _ := range unknownKeys { for k, _ := range unknownKeys {
result.unknownKeys = append(result.unknownKeys, k) result.unknownKeys = append(result.unknownKeys, k)
}
} }
return result return result