From ae14253c80e977c7d9786663b6aacf7d383a15b7 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Tue, 11 Feb 2014 20:23:49 -0500 Subject: [PATCH] Derp me, more incorrect error checking! But now a window shows, and the process hangs, so progress! --- sysdata_windows.go | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/sysdata_windows.go b/sysdata_windows.go index a6fe15e..72ac46b 100644 --- a/sysdata_windows.go +++ b/sysdata_windows.go @@ -90,22 +90,20 @@ func (s *sysData) show() (err error) { } ret := make(chan uiret) defer close(ret) + // TODO figure out how to handle error uitask <- &uimsg{ call: _showWindow, p: []uintptr{uintptr(s.hwnd), show}, ret: ret, } - r := <-ret - if r.err != nil { - return r.err - } + <-ret if !s.shownAlready { uitask <- &uimsg{ call: _updateWindow, p: []uintptr{uintptr(s.hwnd)}, ret: ret, } - r = <-ret + r := <-ret if r.ret == 0 { // failure return fmt.Errorf("error updating window for the first time: %v", r.err) } @@ -117,12 +115,12 @@ func (s *sysData) show() (err error) { func (s *sysData) hide() (err error) { ret := make(chan uiret) defer close(ret) + // TODO figure out how to handle error uitask <- &uimsg{ call: _showWindow, p: []uintptr{uintptr(s.hwnd), _SW_HIDE}, ret: ret, } - r := <-ret - close(ret) - return r.err + <-ret + return nil }