Community
Participate
Working Groups
N20100304-2130, looks like a regression from bug 102279 - put this into a CU called "Hello.java": package p; class One { } class Two { } - search for references to Two => NPE: !ENTRY org.eclipse.core.jobs 4 2 2010-03-05 17:36:23.577 !MESSAGE An internal error occurred during: "Java Search". !STACK 0 java.lang.NullPointerException at org.eclipse.jdt.internal.core.search.IndexSelector.initializeIndexLocations(IndexSelector.java:202) at org.eclipse.jdt.internal.core.search.IndexSelector.getIndexLocations(IndexSelector.java:281) at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.selectIndexes(JavaSearchParticipant.java:107) at org.eclipse.jdt.internal.core.search.PatternSearchJob.getIndexes(PatternSearchJob.java:79) at org.eclipse.jdt.internal.core.search.PatternSearchJob.ensureReadyToRun(PatternSearchJob.java:50) at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(JobManager.java:174) at org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches(BasicSearchEngine.java:222) at org.eclipse.jdt.internal.core.search.BasicSearchEngine.search(BasicSearchEngine.java:523) at org.eclipse.jdt.core.search.SearchEngine.search(SearchEngine.java:613) at org.eclipse.jdt.internal.ui.search.JavaSearchQuery.run(JavaSearchQuery.java:144) at org.eclipse.search2.internal.ui.InternalSearchUI$InternalSearchJob.run(InternalSearchUI.java:91) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Workaround is to disable Auto Build. The bug is that the code does not consider that ITypeRoot#findPrimaryType() may be null.
I'll fix this for M6...
Created attachment 161273 [details] Proposed patch This patch adds the missing null check and a test to verify that this NPE won't happen again...
Created attachment 161283 [details] New proposed patch This patch also fixes a potential CCE...
(In reply to comment #4) > Created an attachment (id=161283) [details] > New proposed patch > Released for 3.6M6 in HEAD stream.
Verified for 3.6M6 using I20100309-0809 that I no longer get a NPE inside the indexes. Now I get: java.lang.NullPointerException at org.eclipse.ui.part.PageBookView.createPage(PageBookView.java:415) at org.eclipse.ui.part.PageBookView.partActivated(PageBookView.java:757) at org.eclipse.search2.internal.ui.SearchView.partActivated(SearchView.java:319) at org.eclipse.search2.internal.ui.SearchView.internalShowSearchPage(SearchView.java:403) at org.eclipse.search2.internal.ui.SearchView.showSearchResult(SearchView.java:374) at org.eclipse.search2.internal.ui.SearchViewManager.showNewSearchQuery(SearchViewManager.java:70) at org.eclipse.search2.internal.ui.SearchViewManager$1.queryAdded(SearchViewManager.java:47) at org.eclipse.search2.internal.ui.QueryManager.fireAdded(QueryManager.java:93) at org.eclipse.search2.internal.ui.QueryManager.addQuery(QueryManager.java:70) at org.eclipse.search2.internal.ui.InternalSearchUI.addQuery(InternalSearchUI.java:309) at org.eclipse.search2.internal.ui.InternalSearchUI.runSearchInBackground(InternalSearchUI.java:167) at org.eclipse.search.ui.NewSearchUI.runQueryInBackground(NewSearchUI.java:132) at org.eclipse.search.ui.NewSearchUI.runQueryInBackground(NewSearchUI.java:105) at org.eclipse.jdt.internal.ui.search.SearchUtil.runQueryInBackground(SearchUtil.java:79) at org.eclipse.jdt.ui.actions.FindAction.performNewSearch(FindAction.java:284) at org.eclipse.jdt.ui.actions.FindAction.run(FindAction.java:267) at org.eclipse.jdt.ui.actions.FindReferencesAction.run(FindReferencesAction.java:101) at org.eclipse.jdt.ui.actions.FindAction.run(FindAction.java:230) at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchA
This seems to be related to bug 305156.