Fixed stopping idlers

pull/145/head
M66B 6 years ago
parent 7a55f8b8ed
commit 9ecdfaafa4

@ -867,6 +867,7 @@ public class ServiceSynchronize extends LifecycleService {
ifolder.idle(false); ifolder.idle(false);
//Log.i(Helper.TAG, folder.name + " done idle"); //Log.i(Helper.TAG, folder.name + " done idle");
} }
} catch (FolderClosedException ignored) {
} catch (Throwable ex) { } catch (Throwable ex) {
Log.e(Helper.TAG, folder.name + " " + ex + "\n" + Log.getStackTraceString(ex)); Log.e(Helper.TAG, folder.name + " " + ex + "\n" + Log.getStackTraceString(ex));
reportError(account.name, folder.name, ex); reportError(account.name, folder.name, ex);
@ -1051,12 +1052,6 @@ public class ServiceSynchronize extends LifecycleService {
join(sync); join(sync);
} }
// Stop idlers
for (Thread idler : idlers) {
idler.interrupt();
join(idler);
}
// Close store // Close store
try { try {
Thread t = new Thread(new Runnable() { Thread t = new Thread(new Runnable() {
@ -1086,6 +1081,12 @@ public class ServiceSynchronize extends LifecycleService {
for (EntityFolder folder : folders.keySet()) for (EntityFolder folder : folders.keySet())
db.folder().setFolderState(folder.id, null); db.folder().setFolderState(folder.id, null);
} }
// Stop idlers
for (Thread idler : idlers) {
idler.interrupt();
join(idler);
}
} }
if (state.running) { if (state.running) {

Loading…
Cancel
Save