provisioner/chef: fix panic

Fixes #15431
Fixes #15500
This commit is contained in:
Sander van Harmelen 2017-07-22 09:58:58 +02:00
parent c4857bdbaf
commit b01f68f343
1 changed files with 10 additions and 10 deletions

View File

@ -782,18 +782,18 @@ func decodeConfig(d *schema.ResourceData) (*provisioner, error) {
}
func getStringList(v interface{}) []string {
if v == nil {
return nil
}
switch l := v.(type) {
case []string:
return l
var result []string
switch v := v.(type) {
case nil:
return result
case []interface{}:
arr := make([]string, len(l))
for i, x := range l {
arr[i] = x.(string)
for _, vv := range v {
if vv, ok := vv.(string); ok {
result = append(result, vv)
}
return arr
}
return result
default:
panic(fmt.Sprintf("Unsupported type: %T", v))
}