commit 710a7a9c008e628170372ce4c5eab910deff8b4d
parent ddeed56700fda632ea00be2aeb70a21207e8f53e
Author: MTRNord <mtrnord1@gmail.com>
Date: Wed, 23 Aug 2017 15:18:32 +0200
Avoid crash on empty Username or Password
Diffstat:
| M | uis.go | | | 54 | +++++++++++++++++++++++++++++------------------------- |
1 file changed, 29 insertions(+), 25 deletions(-)
diff --git a/uis.go b/uis.go
@@ -92,33 +92,37 @@ func NewLoginUI(windowWidth, windowHeight int) *widgets.QWidget {
loginButton.ConnectClicked(func(checked bool) {
//TODO register enter and show loader or so
- localLog.Println("Starting Login Sequenze in background")
- var wg sync.WaitGroup
- results := make(chan *matrix.Client)
-
- wg.Add(1)
- go func(username, password string, localLog *log.Logger, results chan<- *matrix.Client) {
- defer wg.Done()
- cli, err := matrix.LoginUser(username, password)
- if err != nil {
- localLog.Println(err)
+ if username != "" && password != "" {
+ localLog.Println("Starting Login Sequenze in background")
+ var wg sync.WaitGroup
+ results := make(chan *matrix.Client)
+
+ wg.Add(1)
+ go func(username, password string, localLog *log.Logger, results chan<- *matrix.Client) {
+ defer wg.Done()
+ cli, err := matrix.LoginUser(username, password)
+ if err != nil {
+ localLog.Println(err)
+ }
+
+ results <- cli
+
+ }(username, password, localLog, results)
+
+ go func() {
+ wg.Wait() // wait for each execTask to return
+ close(results) // then close the results channel
+ }()
+
+ //Show MainUI
+ for result := range results {
+ //TODO Don't switch screen on wrong login data.
+ MainUI := NewMainUI(windowWidth, windowHeight, result)
+ window.SetCentralWidget(MainUI)
}
-
- results <- cli
-
- }(username, password, localLog, results)
-
- go func() {
- wg.Wait() // wait for each execTask to return
- close(results) // then close the results channel
- }()
-
- //Show MainUI
- for result := range results {
- MainUI := NewMainUI(windowWidth, windowHeight, result)
- window.SetCentralWidget(MainUI)
+ } else {
+ localLog.Println("Username and/or password is empty. Do Nothing.")
}
-
})
widget.SetWindowTitle("Neo - Login")