This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 258588 - NPE when use Introduce Method
Summary: NPE when use Introduce Method
Status: RESOLVED FIXED
Alias: None
Product: cnd
Classification: Unclassified
Component: Editor (show other bugs)
Version: 8.1
Hardware: All All
: P3 normal (vote)
Assignee: Alexander Simon
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-30 13:30 UTC by Vladimir Voskresensky
Modified: 2016-05-23 10:56 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Voskresensky 2016-03-30 13:30:39 UTC
Trying to Preview Introduce Method and got empty right panel in diff view for declaration + NPEs in log

java.lang.NullPointerException
	at org.netbeans.modules.cnd.modelutil.CsmUtilities.getCsmProject(CsmUtilities.java:397)
	at org.netbeans.modules.cnd.modelimpl.platform.ModelSupport$ModifiedObjectsChangeListener.editStart(ModelSupport.java:634)
	at org.netbeans.modules.cnd.modelimpl.platform.ModelSupport$ModifiedObjectsChangeListener.stateChanged(ModelSupport.java:728)
	at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:133)
	at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:119)
	at org.openide.loaders.DataObject$ModifiedRegistry.add(DataObject.java:1451)
	at org.openide.loaders.DataObject$ModifiedRegistry.add(DataObject.java:1422)
	at java.util.Collections$SynchronizedCollection.add(Collections.java:2035)
	at org.openide.loaders.DataObject.setModified(DataObject.java:558)
	at org.openide.text.DataEditorSupport$Env.markModifiedImpl(DataEditorSupport.java:1010)
	at org.openide.text.DataEditorSupport$Env.markModified(DataEditorSupport.java:990)
	at org.openide.text.CloneableEditorSupport.notifyModified(CloneableEditorSupport.java:1575)
	at org.netbeans.modules.cnd.source.CppEditorSupport.notifyModified(CppEditorSupport.java:148)
	at org.openide.text.CloneableEditorSupport.callNotifyModified(CloneableEditorSupport.java:1534)
	at org.openide.text.CloneableEditorSupport$DocFilter.checkModificationAllowed(CloneableEditorSupport.java:2426)
	at org.openide.text.CloneableEditorSupport$DocFilter.insertString(CloneableEditorSupport.java:2363)
	at org.netbeans.editor.BaseDocument.insertString(BaseDocument.java:749)
	at org.netbeans.modules.editor.indent.spi.Context.modifyIndent(Context.java:214)
	at org.netbeans.modules.cnd.editor.indent.CppIndentTask.reindent(CppIndentTask.java:180)
	at org.netbeans.modules.editor.indent.TaskHandler$MimeItem.runTask(TaskHandler.java:555)
	at org.netbeans.modules.editor.indent.TaskHandler.runTasks(TaskHandler.java:316)
	at org.netbeans.modules.editor.indent.IndentImpl.reindent(IndentImpl.java:299)
	at org.netbeans.modules.editor.indent.api.Indent.reindent(Indent.java:171)
	at org.netbeans.modules.cnd.editor.api.FormattingSupport$2.run(FormattingSupport.java:213)
	at org.netbeans.editor.GuardedDocument.runAtomic(GuardedDocument.java:323)
	at org.netbeans.modules.cnd.editor.api.FormattingSupport.getIndentedText(FormattingSupport.java:219)
	at org.netbeans.modules.cnd.refactoring.plugins.IntroduceMethodPlugin.processFile(IntroduceMethodPlugin.java:214)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmModificationRefactoringPlugin.processFiles(CsmModificationRefactoringPlugin.java:138)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmRefactoringPlugin.processFiles(CsmRefactoringPlugin.java:116)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmRefactoringPlugin.createAndAddElements(CsmRefactoringPlugin.java:127)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmModificationRefactoringPlugin.prepare(CsmModificationRefactoringPlugin.java:95)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare2(AbstractRefactoring.java:442)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare(AbstractRefactoring.java:426)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.prepare(AbstractRefactoring.java:237)
	at org.netbeans.modules.refactoring.spi.impl.ParametersPanel$Prepare.run(ParametersPanel.java:1062)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)
Comment 1 soldatov 2016-04-28 15:38:35 UTC
Same exception in latest Oracle Solaris Studio too.

Scenario:
- Create Quote
- Open quote.cc
- Select 224-227 lines
- Press Alt-Shift-M
- Press Refactor button
==> NPE in messages.log

INFO [org.netbeans.modules.cnd.editor.cos.COSRedirectorImpl]: inode file Changed org.netbeans.modules.cnd.source.CCDataObject@5ef940e5[/export/files/NB/Quote_1/quote.cc@a593167b:558c93f6] Key{fs=0, dev=0, inode=2799676}->Key{fs=0, dev=0, inode=2799676}
java.lang.NullPointerException
	at org.netbeans.modules.cnd.modelutil.CsmUtilities.getCsmProject(CsmUtilities.java:397)
	at org.netbeans.modules.cnd.modelimpl.platform.ModelSupport$ModifiedObjectsChangeListener.editStart(ModelSupport.java:633)
	at org.netbeans.modules.cnd.modelimpl.platform.ModelSupport$ModifiedObjectsChangeListener.stateChanged(ModelSupport.java:727)
	at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:133)
	at org.openide.util.ChangeSupport.fireChange(ChangeSupport.java:119)
	at org.openide.loaders.DataObject$ModifiedRegistry.add(DataObject.java:1451)
	at org.openide.loaders.DataObject$ModifiedRegistry.add(DataObject.java:1422)
	at java.util.Collections$SynchronizedCollection.add(Collections.java:2035)
	at org.openide.loaders.DataObject.setModified(DataObject.java:558)
	at org.openide.text.DataEditorSupport$Env.markModifiedImpl(DataEditorSupport.java:1010)
	at org.openide.text.DataEditorSupport$Env.markModified(DataEditorSupport.java:990)
	at org.openide.text.CloneableEditorSupport.notifyModified(CloneableEditorSupport.java:1575)
	at org.netbeans.modules.cnd.source.CppEditorSupport.notifyModified(CppEditorSupport.java:148)
	at org.openide.text.CloneableEditorSupport.callNotifyModified(CloneableEditorSupport.java:1534)
	at org.openide.text.CloneableEditorSupport$DocFilter.checkModificationAllowed(CloneableEditorSupport.java:2426)
	at org.openide.text.CloneableEditorSupport$DocFilter.insertString(CloneableEditorSupport.java:2363)
	at org.netbeans.editor.BaseDocument.insertString(BaseDocument.java:749)
	at org.netbeans.modules.editor.indent.spi.Context.modifyIndent(Context.java:214)
	at org.netbeans.modules.cnd.editor.indent.CppIndentTask.reindent(CppIndentTask.java:200)
	at org.netbeans.modules.editor.indent.TaskHandler$MimeItem.runTask(TaskHandler.java:555)
	at org.netbeans.modules.editor.indent.TaskHandler.runTasks(TaskHandler.java:316)
	at org.netbeans.modules.editor.indent.IndentImpl.reindent(IndentImpl.java:299)
	at org.netbeans.modules.editor.indent.api.Indent.reindent(Indent.java:171)
	at org.netbeans.modules.cnd.editor.api.FormattingSupport$2.run(FormattingSupport.java:213)
	at org.netbeans.editor.GuardedDocument.runAtomic(GuardedDocument.java:323)
	at org.netbeans.modules.cnd.editor.api.FormattingSupport.getIndentedText(FormattingSupport.java:219)
	at org.netbeans.modules.cnd.refactoring.plugins.IntroduceMethodPlugin.processFile(IntroduceMethodPlugin.java:165)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmModificationRefactoringPlugin.processFiles(CsmModificationRefactoringPlugin.java:138)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmRefactoringPlugin.processFiles(CsmRefactoringPlugin.java:116)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmRefactoringPlugin.createAndAddElements(CsmRefactoringPlugin.java:127)
	at org.netbeans.modules.cnd.refactoring.plugins.CsmModificationRefactoringPlugin.prepare(CsmModificationRefactoringPlugin.java:95)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare2(AbstractRefactoring.java:442)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare(AbstractRefactoring.java:426)
	at org.netbeans.modules.refactoring.api.AbstractRefactoring.prepare(AbstractRefactoring.java:237)
	at org.netbeans.modules.refactoring.spi.impl.ParametersPanel$Prepare.run(ParametersPanel.java:1059)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)
Comment 2 Alexander Simon 2016-05-23 10:56:54 UTC
fixed, change set:
http://hg.netbeans.org/cnd-main/rev/3985eb99b0d3