From 41fe4375366601edf1c81287d39d2d4c73bb379a Mon Sep 17 00:00:00 2001 From: akatsuki-py Date: Sun, 1 Dec 2019 18:58:39 +0900 Subject: [PATCH] break goroutine when quit executed --- ui_tcell.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ui_tcell.go b/ui_tcell.go index 40eed0d..f6cdccc 100644 --- a/ui_tcell.go +++ b/ui_tcell.go @@ -103,6 +103,7 @@ func (ui *tcellUI) Run() error { ui.screen.SetStyle(tcell.StyleDefault) ui.screen.Clear() + stopGoroutine := false go func() { for { switch ev := ui.screen.PollEvent().(type) { @@ -113,8 +114,15 @@ func (ui *tcellUI) Run() error { case *tcell.EventResize: ui.handleResizeEvent(ev) } + + if stopGoroutine { + break + } } }() + defer func() { + stopGoroutine = true + }() for { select {