about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--widgets/account.go20
1 files changed, 12 insertions, 8 deletions
diff --git a/widgets/account.go b/widgets/account.go
index bd47f46..f553a92 100644
--- a/widgets/account.go
+++ b/widgets/account.go
@@ -184,17 +184,21 @@ func (acct *AccountView) onMessage(msg types.WorkerMessage) {
 			})
 		}
 	case *types.DirectoryContents:
-		store := acct.msgStores[acct.dirlist.selected]
-		store.Update(msg)
+		if store, ok := acct.msgStores[acct.dirlist.selected]; ok {
+			store.Update(msg)
+		}
 	case *types.FullMessage:
-		store := acct.msgStores[acct.dirlist.selected]
-		store.Update(msg)
+		if store, ok := acct.msgStores[acct.dirlist.selected]; ok {
+			store.Update(msg)
+		}
 	case *types.MessageInfo:
-		store := acct.msgStores[acct.dirlist.selected]
-		store.Update(msg)
+		if store, ok := acct.msgStores[acct.dirlist.selected]; ok {
+			store.Update(msg)
+		}
 	case *types.MessagesDeleted:
-		store := acct.msgStores[acct.dirlist.selected]
-		store.Update(msg)
+		if store, ok := acct.msgStores[acct.dirlist.selected]; ok {
+			store.Update(msg)
+		}
 	case *types.Error:
 		acct.logger.Printf("%v", msg.Error)
 		acct.host.SetStatus(fmt.Sprintf("%v", msg.Error)).