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 { func getStringList(v interface{}) []string {
if v == nil { var result []string
return nil
} switch v := v.(type) {
switch l := v.(type) { case nil:
case []string: return result
return l
case []interface{}: case []interface{}:
arr := make([]string, len(l)) for _, vv := range v {
for i, x := range l { if vv, ok := vv.(string); ok {
arr[i] = x.(string) result = append(result, vv)
}
} }
return arr return result
default: default:
panic(fmt.Sprintf("Unsupported type: %T", v)) panic(fmt.Sprintf("Unsupported type: %T", v))
} }