diff --git a/ethereal/ethereum.go b/ethereal/ethereum.go index 0adb9f151..782001195 100644 --- a/ethereal/ethereum.go +++ b/ethereal/ethereum.go @@ -4,6 +4,8 @@ import ( "fmt" "github.com/ethereum/eth-go" "github.com/ethereum/eth-go/ethchain" + "github.com/ethereum/eth-go/etherpc" + "github.com/ethereum/eth-go/ethpub" "github.com/ethereum/eth-go/ethutil" "github.com/ethereum/go-ethereum/ethereal/ui" "github.com/ethereum/go-ethereum/utils" @@ -98,6 +100,11 @@ func main() { os.Exit(0) } + if StartRpc { + ethereum.RpcServer = etherpc.NewJsonRpcServer(ethpub.NewPEthereum(ethereum.StateManager(), ethereum.BlockChain(), ethereum.TxPool())) + go ethereum.RpcServer.Start() + } + log.Printf("Starting Ethereum GUI v%s\n", ethutil.Config.Ver) // Set the max peers diff --git a/ethereal/ui/ext_app.go b/ethereal/ui/ext_app.go index a215709d0..110ad37d7 100644 --- a/ethereal/ui/ext_app.go +++ b/ethereal/ui/ext_app.go @@ -35,7 +35,7 @@ type ExtApplication struct { func NewExtApplication(container AppContainer, lib *UiLib) *ExtApplication { app := &ExtApplication{ - ethpub.NewPEthereum(lib.eth), + ethpub.NewPEthereum(lib.eth.StateManager(), lib.eth.BlockChain(), lib.eth.TxPool()), make(chan ethutil.React, 1), make(chan ethutil.React, 1), make(chan bool), diff --git a/ethereum/ethereum.go b/ethereum/ethereum.go index 829f71e39..1315c0120 100644 --- a/ethereum/ethereum.go +++ b/ethereum/ethereum.go @@ -134,10 +134,8 @@ func main() { go console.Start() } if StartRpc { - // TODO: Can we make this work again? - //ethereum.RpcServer = etherpc.NewJsonRpcServer(ethpub.NewPEthereum(ethereum)) - rpc := etherpc.NewJsonRpcServer(ethpub.NewPEthereum(ethereum)) - go rpc.Start() + ethereum.RpcServer = etherpc.NewJsonRpcServer(ethpub.NewPEthereum(ethereum.StateManager(), ethereum.BlockChain(), ethereum.TxPool())) + go ethereum.RpcServer.Start() } RegisterInterrupts(ethereum)