Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java
index 609d2d334bf..13dbeb38268 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOMManager.java
@@ -720,7 +720,9 @@ public class PDOMManager implements IWritableIndexManager, IListener {
@Override
public boolean isIndexerIdle() {
- return Job.getJobManager().find(this).length == 0;
+ synchronized (fTaskQueue) {
+ return Job.getJobManager().find(this).length == 0;
+ }
}
void addProject(final ICProject cproject) {
@@ -1097,7 +1099,7 @@ public class PDOMManager implements IWritableIndexManager, IListener {
@Override
public void done(IJobChangeEvent event) {
synchronized (idleCondition) {
- if (Job.getJobManager().find(PDOMManager.this).length == 0) {
+ if (isIndexerIdle()) {
idleCondition[0] = true;
idleCondition.notifyAll();
}
@@ -1106,7 +1108,7 @@ public class PDOMManager implements IWritableIndexManager, IListener {
};
Job.getJobManager().addJobChangeListener(listener);
try {
- if (Job.getJobManager().find(this).length == 0) {
+ if (isIndexerIdle()) {
return true;
}
synchronized (idleCondition) {

Back to the top