From 62f6bece57c08e9cb2fc400b3f736944afe3eea1 Mon Sep 17 00:00:00 2001 From: Lea Anthony Date: Fri, 3 Jan 2020 09:02:34 +1100 Subject: [PATCH] fix: shutdown ipcmanager --- lib/ipc/manager.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/ipc/manager.go b/lib/ipc/manager.go index fb1a26ad..a4170406 100644 --- a/lib/ipc/manager.go +++ b/lib/ipc/manager.go @@ -3,7 +3,6 @@ package ipc import ( "fmt" "sync" - "time" "github.com/wailsapp/wails/lib/interfaces" "github.com/wailsapp/wails/lib/logger" @@ -124,8 +123,8 @@ func (i *Manager) Start(eventManager interfaces.EventManager, bindingManager int i.log.DebugFields("Finished processing message", logger.Fields{ "1D": &incomingMessage, }) - default: - time.Sleep(1 * time.Millisecond) + case <-i.quitChannel: + i.running = false } } i.log.Debug("Stopping") @@ -175,7 +174,7 @@ func (i *Manager) SendResponse(response *ipcResponse) error { // Shutdown is called when exiting the Application func (i *Manager) Shutdown() { i.log.Debug("Shutdown called") - i.running = false + i.quitChannel <- struct{}{} i.log.Debug("Waiting of main loop shutdown") i.wg.Wait() }