diff options
author | Felix Lange <fjl@twurst.com> | 2016-02-12 09:19:52 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2016-02-12 09:19:52 +0800 |
commit | 2680e23b1589f686c53d080b1384ba67f5dc3326 (patch) | |
tree | 490ec95397cb1ff7dd7fbdd90469fa9b69d4ddd3 /jsre/pretty.go | |
parent | d6c6bcc9f3157d87081db900c7f3903dbaa1e9d9 (diff) | |
download | go-tangerine-2680e23b1589f686c53d080b1384ba67f5dc3326.tar.gz go-tangerine-2680e23b1589f686c53d080b1384ba67f5dc3326.tar.zst go-tangerine-2680e23b1589f686c53d080b1384ba67f5dc3326.zip |
jsre: fix pretty printer for upstream otto change
Diffstat (limited to 'jsre/pretty.go')
-rw-r--r-- | jsre/pretty.go | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/jsre/pretty.go b/jsre/pretty.go index 99aa9b33e..64f0a95c9 100644 --- a/jsre/pretty.go +++ b/jsre/pretty.go @@ -202,8 +202,17 @@ func (ctx ppctx) doOwnProperties(v otto.Value, f func(string)) { Object, _ := ctx.vm.Object("Object") rv, _ := Object.Call("getOwnPropertyNames", v) gv, _ := rv.Export() - for _, v := range gv.([]interface{}) { - f(v.(string)) + switch gv := gv.(type) { + case []interface{}: + for _, v := range gv { + f(v.(string)) + } + case []string: + for _, v := range gv { + f(v) + } + default: + panic(fmt.Errorf("Object.getOwnPropertyNames returned unexpected type %T", gv)) } } |