mirror of
https://github.com/M66B/FairEmail.git
synced 2025-02-28 08:46:01 +00:00
Consider folder errors as fatal
This commit is contained in:
parent
e4e180bbab
commit
274c397c65
1 changed files with 3 additions and 17 deletions
|
@ -47,7 +47,6 @@ import androidx.lifecycle.MutableLiveData;
|
||||||
import androidx.lifecycle.Observer;
|
import androidx.lifecycle.Observer;
|
||||||
import androidx.preference.PreferenceManager;
|
import androidx.preference.PreferenceManager;
|
||||||
|
|
||||||
import com.sun.mail.iap.BadCommandException;
|
|
||||||
import com.sun.mail.imap.IMAPFolder;
|
import com.sun.mail.imap.IMAPFolder;
|
||||||
|
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
|
@ -882,27 +881,14 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
||||||
try {
|
try {
|
||||||
ifolder.open(Folder.READ_ONLY);
|
ifolder.open(Folder.READ_ONLY);
|
||||||
db.folder().setFolderReadOnly(folder.id, true);
|
db.folder().setFolderReadOnly(folder.id, true);
|
||||||
} catch (MessagingException ex1) {
|
} catch (Throwable ex1) {
|
||||||
Log.w(folder.name, ex1);
|
|
||||||
db.folder().setFolderState(folder.id, null);
|
|
||||||
db.folder().setFolderError(folder.id, Log.formatThrowable(ex1));
|
db.folder().setFolderError(folder.id, Log.formatThrowable(ex1));
|
||||||
continue;
|
throw ex1;
|
||||||
}
|
}
|
||||||
} catch (FolderNotFoundException ex) {
|
} catch (FolderNotFoundException ex) {
|
||||||
Log.w(folder.name, ex);
|
Log.w(folder.name, ex);
|
||||||
db.folder().deleteFolder(folder.id);
|
db.folder().deleteFolder(folder.id);
|
||||||
continue;
|
continue;
|
||||||
} catch (MessagingException ex) {
|
|
||||||
Log.e(folder.name, ex);
|
|
||||||
db.folder().setFolderState(folder.id, null);
|
|
||||||
|
|
||||||
if (ex.getCause() instanceof BadCommandException)
|
|
||||||
throw ex;
|
|
||||||
if ("connection failure".equals(ex.getMessage()))
|
|
||||||
throw ex;
|
|
||||||
|
|
||||||
db.folder().setFolderError(folder.id, Log.formatThrowable(ex));
|
|
||||||
continue;
|
|
||||||
} catch (Throwable ex) {
|
} catch (Throwable ex) {
|
||||||
db.folder().setFolderError(folder.id, Log.formatThrowable(ex));
|
db.folder().setFolderError(folder.id, Log.formatThrowable(ex));
|
||||||
throw ex;
|
throw ex;
|
||||||
|
@ -1016,7 +1002,7 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
||||||
} else
|
} else
|
||||||
mapFolders.put(folder, null);
|
mapFolders.put(folder, null);
|
||||||
|
|
||||||
Log.i(folder.name + " observing");
|
Log.d(folder.name + " observing");
|
||||||
handler.post(new Runnable() {
|
handler.post(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
Loading…
Reference in a new issue