Bug 178222 - [Indexer] NPE when parsing firefox
Summary: [Indexer] NPE when parsing firefox
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-core (show other bugs)
Version: 4.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 4.0   Edit
Assignee: Doug Schaefer CLA
QA Contact:
URL:
Whiteboard:
Keywords: contributed
Depends on:
Blocks:
 
Reported: 2007-03-20 06:55 EDT by Markus Schorn CLA
Modified: 2008-06-19 23:54 EDT (History)
1 user (show)

See Also:


Attachments
proposed patch (3.00 KB, patch)
2007-03-20 09:54 EDT, Bryan Wilkinson CLA
bjorn.freeman-benson: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Schorn CLA 2007-03-20 06:55:11 EDT
I am getting > 20 NullPointerExceptions when parsing firefox. This is a side-effect of the checkin for bug 167098

java.lang.NullPointerException
at org.eclipse.cdt.internal.core.pdom.db.PDOMNodeLinkedList.addMember(PDOMNodeLinkedList.java:69)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPSpecialization.<init>(PDOMCPPSpecialization.java:61)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPInstance.<init>(PDOMCPPInstance.java:44)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPClassInstance.<init>(PDOMCPPClassInstance.java:64)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.addBinding(PDOMCPPLinkage.java:277)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.addBinding(PDOMCPPLinkage.java:229)
at org.eclipse.cdt.internal.core.pdom.dom.cpp.PDOMCPPLinkage.addBinding(PDOMCPPLinkage.java:203)
at org.eclipse.cdt.internal.core.pdom.WritablePDOM.addBinding(WritablePDOM.java:73)
at org.eclipse.cdt.internal.core.pdom.dom.PDOMFile.createPDOMName(PDOMFile.java:214)
at org.eclipse.cdt.internal.core.pdom.dom.PDOMFile.addNames(PDOMFile.java:197)
at org.eclipse.cdt.internal.core.pdom.WritablePDOM.addFileContent(WritablePDOM.java:54)
at org.eclipse.cdt.internal.core.index.WritableCIndex.setFileContent(WritableCIndex.java:70)
at org.eclipse.cdt.internal.core.pdom.PDOMWriter.addToIndex(PDOMWriter.java:270)
at org.eclipse.cdt.internal.core.pdom.PDOMWriter.addSymbols(PDOMWriter.java:131)
at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.parseTU(PDOMIndexerTask.java:198)
at org.eclipse.cdt.internal.core.pdom.indexer.PDOMIndexerTask.parseTUs(PDOMIndexerTask.java:125)
at org.eclipse.cdt.internal.core.pdom.indexer.fast.PDOMFastIndexerTask.run(PDOMFastIndexerTask.java:91)
at org.eclipse.cdt.internal.core.pdom.indexer.PDOMRebuildTask.run(PDOMRebuildTask.java:80)
at org.eclipse.cdt.internal.core.pdom.PDOMIndexerJob.run(PDOMIndexerJob.java:89)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
Comment 1 Bryan Wilkinson CLA 2007-03-20 09:54:22 EDT
Created attachment 61381 [details]
proposed patch

Patch adds three missing checks for null after calling PDOMCPPLinkage.addType(...).  I'm not sure which version of the Firefox source is the standard benchmark for CDT, but indexing the original 2.0 release no longer results in any NullPointerExceptions.
Comment 2 Doug Schaefer CLA 2007-03-20 10:39:46 EDT
I'll check this out ASAP. I have been meaning to test Firefox this morning. This will push me :).
Comment 3 Doug Schaefer CLA 2007-03-20 10:42:09 EDT
I have applied the patch. I'm not sure if this is just a quick fix. (Do we know why things were null?). If so, just reopen this bug.
Comment 4 Bryan Wilkinson CLA 2007-03-20 11:55:52 EDT
Sorry, should have explained...  The NullPointerException was encountered when a template argument was resolved to a problem binding.  While constructing the class instance's argument map in the PDOM, PDOMCPPLinkage.addType(...) then returned null since the type being added was a problem binding.  There are checks for null after everywhere else this method is called for the same reason.
Comment 5 Doug Schaefer CLA 2007-03-20 14:21:52 EDT
Cool. Makes sense.
Comment 6 Doug Schaefer CLA 2007-05-13 20:35:06 EDT
Setting to milestone 4.0 so we can generate a report of all bugs fixed in 4.0.