Fix crashes when operating on empty folder (#216)
This commit is contained in:
parent
3f30c27bb3
commit
217e85a55d
11 changed files with 45 additions and 15 deletions
|
@ -1,6 +1,7 @@
|
|||
package widgets
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
|
@ -170,8 +171,11 @@ func (acct *AccountView) SelectedAccount() *AccountView {
|
|||
return acct
|
||||
}
|
||||
|
||||
func (acct *AccountView) SelectedMessage() *models.MessageInfo {
|
||||
return acct.msglist.Selected()
|
||||
func (acct *AccountView) SelectedMessage() (*models.MessageInfo, error) {
|
||||
if len(acct.msglist.Store().Uids) == 0 {
|
||||
return nil, errors.New("no message selected")
|
||||
}
|
||||
return acct.msglist.Selected(), nil
|
||||
}
|
||||
|
||||
func (acct *AccountView) SelectedMessagePart() *PartInfo {
|
||||
|
|
|
@ -2,6 +2,7 @@ package widgets
|
|||
|
||||
import (
|
||||
"bufio"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"os/exec"
|
||||
|
@ -211,8 +212,11 @@ func (mv *MessageViewer) SelectedAccount() *AccountView {
|
|||
return mv.acct
|
||||
}
|
||||
|
||||
func (mv *MessageViewer) SelectedMessage() *models.MessageInfo {
|
||||
return mv.msg
|
||||
func (mv *MessageViewer) SelectedMessage() (*models.MessageInfo, error) {
|
||||
if mv.msg == nil {
|
||||
return nil, errors.New("no message selected")
|
||||
}
|
||||
return mv.msg, nil
|
||||
}
|
||||
|
||||
func (mv *MessageViewer) ToggleHeaders() {
|
||||
|
|
|
@ -17,6 +17,6 @@ type ProvidesMessage interface {
|
|||
ui.Drawable
|
||||
Store() *lib.MessageStore
|
||||
SelectedAccount() *AccountView
|
||||
SelectedMessage() *models.MessageInfo
|
||||
SelectedMessage() (*models.MessageInfo, error)
|
||||
SelectedMessagePart() *PartInfo
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue