diff --git a/node/node.go b/node/node.go index 4e916a9..1fcd9ed 100644 --- a/node/node.go +++ b/node/node.go @@ -408,7 +408,11 @@ func (n *Node) initAPIServer() error { err := n.APIServer.Dispatch() n.Log.Fatal("API server initialization failed with %s", err) - n.Net.Close() + if n.Net != nil { + if err := n.Net.Close(); err != nil { + n.Log.Error("error closing network: %s", err) + } + } }) return nil } @@ -563,10 +567,6 @@ func (n *Node) Initialize(Config *Config, logger logging.Logger, logFactory logg n.initBeacons() - if err = n.initNetworking(); err != nil { // Set up P2P networking - return fmt.Errorf("problem initializing networking: %w", err) - } - // Start HTTP APIs if err := n.initAPIServer(); err != nil { // Start the API Server return fmt.Errorf("couldn't initialize API server: %w", err) @@ -577,6 +577,10 @@ func (n *Node) Initialize(Config *Config, logger logging.Logger, logFactory logg // initialize shared memory n.initSharedMemory() + if err = n.initNetworking(); err != nil { // Set up all networking + return fmt.Errorf("problem initializing networking: %w", err) + } + if err := n.initVMManager(); err != nil { // Set up the vm manager return fmt.Errorf("problem initializing the VM manager: %w", err) }