1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-25 09:55:29 +02:00

Cleanup of flushing database, bug 220392

This commit is contained in:
Markus Schorn 2009-06-22 14:13:00 +00:00
parent 14a4c2a8d3
commit 896b8661e0

View file

@ -604,13 +604,11 @@ public class Database {
private void flushAndUnlockChunks(final ArrayList<Chunk> dirtyChunks, boolean isComplete) throws CoreException {
assert !Thread.holdsLock(fCache);
synchronized(fHeaderChunk) {
if (!fHeaderChunk.fDirty) {
if (!(isComplete && fIsMarkedIncomplete)) {
return;
}
}
if (!dirtyChunks.isEmpty()) {
final boolean haveDirtyChunks = !dirtyChunks.isEmpty();
if (haveDirtyChunks || fHeaderChunk.fDirty) {
markFileIncomplete();
}
if (haveDirtyChunks) {
for (Chunk chunk : dirtyChunks) {
if (chunk.fDirty) {
chunk.flush();