helper/schema: Guard against out of range on childAddrOf
This could panic if we sent a parent that was actually longer than the child (should almost never come up, but the guard will make it safe anyway). Also fixed a slice style lint warning in UpdatedKeys.
This commit is contained in:
parent
931b0e1441
commit
36aa63b338
|
@ -197,7 +197,7 @@ func newResourceDiff(schema map[string]*Schema, config *terraform.ResourceConfig
|
|||
// UpdatedKeys returns the keys that were updated by SetNew, SetNewComputed, or
|
||||
// SetDiff. These are the only keys that a diff should be re-calculated for.
|
||||
func (d *ResourceDiff) UpdatedKeys() []string {
|
||||
s := make([]string, 0)
|
||||
var s []string
|
||||
for k := range d.updatedKeys {
|
||||
s = append(s, k)
|
||||
}
|
||||
|
@ -435,5 +435,8 @@ func (d *ResourceDiff) finalizeResult(addr []string, result FieldReadResult) get
|
|||
func childAddrOf(child, parent string) bool {
|
||||
cs := strings.Split(child, ".")
|
||||
ps := strings.Split(parent, ".")
|
||||
if len(ps) > len(cs) {
|
||||
return false
|
||||
}
|
||||
return reflect.DeepEqual(ps, cs[:len(ps)])
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue