Check if folders are actually alive

pull/178/head
M66B 5 years ago
parent d87fb53960
commit 72ede04868

@ -586,6 +586,16 @@ class Core {
});
}
static boolean isAlive(IMAPFolder ifolder) {
try {
noop(ifolder);
} catch (MessagingException ex) {
Log.i(ifolder.getFullName(), ex);
return false;
}
return true;
}
private static void onSeen(Context context, JSONArray jargs, EntityFolder folder, EntityMessage message, IMAPFolder ifolder) throws MessagingException, JSONException {
// Mark message (un)seen
DB db = DB.getInstance(context);

@ -1346,7 +1346,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
if (folder.synchronize)
if (!folder.poll && capIdle) {
// Sends folder NOOP
if (!mapFolders.get(folder).isOpen())
if (!Core.isAlive(mapFolders.get(folder)))
throw new StoreClosedException(iservice.getStore(), folder.name);
} else {
if (folder.poll_count == 0)

Loading…
Cancel
Save