Fix infinite loop on empty DirectoryContents

When changing to an empty directory, ml.selected is 0, and the length
of ml.store.Uids is 0. The loop condition is always true so we have
an infinite loop causing 100% CPU usage and prevents us to change to
other directories.

Signed-off-by: Tom Lebreux <tomlebreux@cock.li>
This commit is contained in:
Tom Lebreux 2019-04-05 15:03:18 -04:00 committed by Drew DeVault
parent 8a42dfc87c
commit 41212a717e

View file

@ -111,8 +111,10 @@ func (ml *MessageList) storeUpdate(store *lib.MessageStore) {
if ml.store != store {
return
}
for ml.selected >= len(ml.store.Uids) {
ml.Prev()
if len(ml.store.Uids) > 0 {
for ml.selected >= len(ml.store.Uids) {
ml.Prev()
}
}
ml.Invalidate()
}