diff options
author | zelig <viktor.tron@gmail.com> | 2015-03-24 22:09:06 +0800 |
---|---|---|
committer | zelig <viktor.tron@gmail.com> | 2015-03-27 03:00:18 +0800 |
commit | 1c4c71dcff442e3ae30e510fef312d3c05341f30 (patch) | |
tree | 11ac27da8c937cd372d5c811442281fea4accd2d | |
parent | fd8d18ec280c3fe2c3d2651870c31c65b02039ba (diff) | |
download | dexon-1c4c71dcff442e3ae30e510fef312d3c05341f30.tar.gz dexon-1c4c71dcff442e3ae30e510fef312d3c05341f30.tar.zst dexon-1c4c71dcff442e3ae30e510fef312d3c05341f30.zip |
cli: fix liner not closing (spuriously opened) in noninteractive jsre
-rw-r--r-- | cmd/ethereum/js.go | 4 | ||||
-rw-r--r-- | cmd/ethereum/main.go | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/cmd/ethereum/js.go b/cmd/ethereum/js.go index 1f0033daa..599af0a16 100644 --- a/cmd/ethereum/js.go +++ b/cmd/ethereum/js.go @@ -67,14 +67,14 @@ type jsre struct { prompter } -func newJSRE(ethereum *eth.Ethereum, libPath string) *jsre { +func newJSRE(ethereum *eth.Ethereum, libPath string, interactive bool) *jsre { js := &jsre{ethereum: ethereum, ps1: "> "} js.xeth = xeth.New(ethereum, js) js.re = re.New(libPath) js.apiBindings() js.adminBindings() - if !liner.TerminalSupported() { + if !liner.TerminalSupported() || !interactive { js.prompter = dumbterm{bufio.NewReader(os.Stdin)} } else { lr := liner.NewLiner() diff --git a/cmd/ethereum/main.go b/cmd/ethereum/main.go index fea3fbf61..59c6ef485 100644 --- a/cmd/ethereum/main.go +++ b/cmd/ethereum/main.go @@ -246,7 +246,7 @@ func console(ctx *cli.Context) { } startEth(ctx, ethereum) - repl := newJSRE(ethereum, ctx.String(utils.JSpathFlag.Name)) + repl := newJSRE(ethereum, ctx.String(utils.JSpathFlag.Name), true) repl.interactive() ethereum.Stop() @@ -261,7 +261,7 @@ func execJSFiles(ctx *cli.Context) { } startEth(ctx, ethereum) - repl := newJSRE(ethereum, ctx.String(utils.JSpathFlag.Name)) + repl := newJSRE(ethereum, ctx.String(utils.JSpathFlag.Name), false) for _, file := range ctx.Args() { repl.exec(file) } |