diff --git a/terraform/eval_state.go b/terraform/eval_state.go index 9c2856301..82cf7838c 100644 --- a/terraform/eval_state.go +++ b/terraform/eval_state.go @@ -88,6 +88,13 @@ type EvalReadStateDeposed struct { } func (n *EvalReadStateDeposed) Eval(ctx EvalContext) (interface{}, error) { + if n.Provider == nil || *n.Provider == nil { + panic("EvalReadStateDeposed used with no Provider object") + } + if n.ProviderSchema == nil || *n.ProviderSchema == nil { + panic("EvalReadStateDeposed used with no ProviderSchema object") + } + key := n.Key if key == states.NotDeposed { return nil, fmt.Errorf("EvalReadStateDeposed used with no instance key; this is a bug in Terraform and should be reported") diff --git a/terraform/node_resource_destroy_deposed.go b/terraform/node_resource_destroy_deposed.go index 0c4a272ab..67c46913f 100644 --- a/terraform/node_resource_destroy_deposed.go +++ b/terraform/node_resource_destroy_deposed.go @@ -88,6 +88,7 @@ func (n *NodePlanDeposedResourceInstanceObject) EvalTree() EvalNode { }, &EvalReadStateDeposed{ Addr: addr.Resource, + Provider: &provider, ProviderSchema: &providerSchema, Key: n.DeposedKey, Output: &state,