Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
Jeff Carr 2019-05-26 02:58:29 -07:00
parent 9e77555991
commit 58fe5021bc
2 changed files with 18 additions and 3 deletions

View File

@ -52,6 +52,7 @@ func addEvent(msg *pb.Event) {
// func processEvents(mychannel chan *pb.Event) {
func processEvents() {
defer r() // a golang trick to try to not crash on certain errors
for {
currentMessage = <-mychannel
log.Println("processEvents() RECIEVED msg = ", currentMessage)

20
main.go
View File

@ -155,15 +155,17 @@ func main() {
// might be a good approach. Time will tell...
//
func mainMouseClick(b *gui.ButtonMap) {
defer r() // a golang trick to try to not crash on certain errors
if (b == nil) {
log.Println("main() BACK IN CONTROL PANEL CODE (button is nil) WHY DID THIS HAPPEN?")
log.Println("main() BACK IN CONTROL PANEL CODE (button is nil) WHY DID THIS HAPPEN?")
log.Println("mainMouseClick() BACK IN MAIN CONTROL PANEL CODE (button is nil) WHY DID THIS HAPPEN?")
log.Println("mainMouseClick() BACK IN MAIN CONTROL PANEL CODE (button is nil) WHY DID THIS HAPPEN?")
onExit(fmt.Errorf("mainMouseClick() got b = nil"))
}
log.Println("mainMouseClick() b.Action =", b.Action)
gui.Data.Current = b.Account
log.Println("main() BACK IN CONTROL PANEL CODE")
log.Println("mainMouseClick() BACK IN CONTROL PANEL CODE")
if (b.Account != nil) {
log.Println("\tmainMouseClick() setting current account = ", b.Account.Nick)
}
@ -309,6 +311,18 @@ func mainMouseClick(b *gui.ButtonMap) {
}
}
// Doing this can sometimes avoid a panic() on things like:
// panic: runtime error: slice bounds out of range
func r() {
if r := recover(); r != nil {
fmt.Println("recover() SOMETHING IS REALLY BROKEN r =", r)
fmt.Println("recover() SOMETHING IS REALLY BROKEN r =", r)
fmt.Println("recover() SOMETHING IS REALLY BROKEN r =", r)
}
}
func prepareAndSend(event *pb.Event) {
if (event.Account == nil) {
log.Println("\tmain.prepareAndSend() ERROR event.Token = nil")