diff --git a/pkg/expr/vars.go b/pkg/expr/vars.go index 602324c28..ad99a352c 100644 --- a/pkg/expr/vars.go +++ b/pkg/expr/vars.go @@ -135,7 +135,12 @@ func (t *Vars) Dict() map[string]interface{} { dict[k] = v.Dict() case TypedValue: - dict[k] = v.Get() + tmp := v.Get() + if d, is := tmp.(Dict); is { + dict[k] = d.Dict() + } else { + dict[k] = tmp + } default: dict[k] = v