diff --git a/core/org.eclipse.cdt.ui/ChangeLog b/core/org.eclipse.cdt.ui/ChangeLog index 8c1a78d7c34..1ca0bff90f5 100644 --- a/core/org.eclipse.cdt.ui/ChangeLog +++ b/core/org.eclipse.cdt.ui/ChangeLog @@ -1,3 +1,6 @@ +2004-09-09 Bogdan Gheorghe + Fix for 73406 - Indexer: Double-Indexing on Specific Project + 2004-09-09 Chris Wiebe limit base class selection to referenced projects diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerOptionPropertyPage.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerOptionPropertyPage.java index fa2187666dd..f715051fa98 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerOptionPropertyPage.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/dialogs/IndexerOptionPropertyPage.java @@ -32,10 +32,12 @@ public class IndexerOptionPropertyPage extends PropertyPage { private IndexerOptionDialogPage optionPage; private boolean oldIndexerValue; private int oldIndexerProblemsValue; + private boolean requestedIndexAll; public IndexerOptionPropertyPage(){ super(); optionPage = new IndexerOptionDialogPage(); + requestedIndexAll = false; } /* (non-Javadoc) * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite) @@ -91,10 +93,12 @@ public class IndexerOptionPropertyPage extends PropertyPage { CCorePlugin.getDefault().getCoreModel().getIndexManager().removeIndexerProblems(tempProject); //if indexer is now on send a index all request - if( indexChanged && newIndexerValue ) + if( indexChanged && newIndexerValue && !requestedIndexAll ) { CCorePlugin.getDefault().getCoreModel().getIndexManager().indexAll(tempProject); - else if( indexChanged && !newIndexerValue ) + requestedIndexAll = true; + } else if( indexChanged && !newIndexerValue ) { CCorePlugin.getDefault().getCoreModel().getIndexManager().discardJobs( tempProject.getName() ); + } } return true; }