mirror of https://github.com/M66B/FairEmail.git
Optimize message counting
This commit is contained in:
parent
bace770598
commit
8641448ade
|
@ -1663,21 +1663,7 @@ public class IMAPFolder extends Folder implements UIDFolder, ResponseHandler {
|
|||
synchronized (messageCacheLock) {
|
||||
if (messageCache == null)
|
||||
return -1;
|
||||
|
||||
try {
|
||||
int count = 0;
|
||||
int size = messageCache.size();
|
||||
for (int i = 1; i <= size; i++) {
|
||||
Message message = messageCache.getMessage(i);
|
||||
if (message != null && !message.isExpunged())
|
||||
count++;
|
||||
}
|
||||
|
||||
return count;
|
||||
} catch (Throwable ex) {
|
||||
eu.faircode.email.Log.e(ex);
|
||||
return -1;
|
||||
}
|
||||
return messageCache.getCount();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -130,6 +130,16 @@ public class MessageCache {
|
|||
return msg;
|
||||
}
|
||||
|
||||
public int getCount() {
|
||||
int count = 0;
|
||||
for (int i = 0; i < size; i++) {
|
||||
IMAPMessage msg = messages[i];
|
||||
if (msg == null || !msg.isExpunged())
|
||||
count++;
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the message object for the indicated sequence number.
|
||||
* If the message object hasn't been created, create it.
|
||||
|
|
Loading…
Reference in New Issue