[^cdr] fix deadlock during background document commit

This commit is contained in:
peter
2016-06-09 13:48:11 +02:00
parent 6d79ed7498
commit aa794d5671
@@ -559,11 +559,12 @@ public class DocumentCommitThread implements Runnable, Disposable, DocumentCommi
return;
}
boolean canceled = false;
try {
if (documentManager.isCommitted(document)) return;
if (!task.isStillValid()) {
task.cancel("Task invalidated", DocumentCommitThread.this);
canceled = true;
return;
}
@@ -586,6 +587,9 @@ public class DocumentCommitThread implements Runnable, Disposable, DocumentCommi
}
finally {
lock.unlock();
if (canceled) {
task.cancel("Task invalidated", DocumentCommitThread.this);
}
}
}
};