parent
9e77555991
commit
58fe5021bc
|
@ -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
20
main.go
|
@ -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")
|
||||
|
|
Loading…
Reference in New Issue