Bug 464794 - NPE in ProjectionDocument.normalize (671)
Summary: NPE in ProjectionDocument.normalize (671)
Status: CLOSED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 4.5   Edit
Hardware: All All
: P5 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-Text-Inbox CLA
QA Contact:
URL:
Whiteboard: stalebug
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2015-04-16 09:20 EDT by EPP Error Reports CLA
Modified: 2020-08-04 19:07 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2015-04-16 09:20:01 EDT
The following incident was reported via the automated error reporting:


    code:                   4
    plugin:                 org.eclipse.wst.sse.core_1.1.900.v201401092025
    message:                HIDDEN
    fingerprint:            0c042e6c
    exception class:        java.lang.NullPointerException
    exception message:      HIDDEN
    number of children:     0
    
    java.lang.NullPointerException: HIDDEN
    at org.eclipse.jface.text.projection.ProjectionDocument.normalize(ProjectionDocument.java:671)
    at org.eclipse.jface.text.projection.ProjectionDocument.masterDocumentAboutToBeChanged(ProjectionDocument.java:721)
    at org.eclipse.jface.text.projection.ProjectionDocumentManager.fireDocumentEvent(ProjectionDocumentManager.java:121)
    at org.eclipse.jface.text.projection.ProjectionDocumentManager.documentAboutToBeChanged(ProjectionDocumentManager.java:138)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument._fireDocumentAboutToChange(BasicStructuredDocument.java:389)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.fireDocumentAboutToChanged(BasicStructuredDocument.java:1120)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.internalReplaceText(BasicStructuredDocument.java:1912)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2423)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2419)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.access$3(JobSafeStructuredDocument.java:1)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument$4.run(JobSafeStructuredDocument.java:163)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.wst.sse.ui.EditorExecutionContext.execute(EditorExecutionContext.java:149)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.replaceText(JobSafeStructuredDocument.java:171)
    at org.eclipse.wst.xml.core.internal.document.XMLModelUpdater.replaceSource(XMLModelUpdater.java:1627)
    at org.eclipse.wst.xml.core.internal.document.XMLModelUpdater.replaceAttr(XMLModelUpdater.java:1364)
    at org.eclipse.wst.xml.core.internal.document.DOMModelImpl.attrReplaced(DOMModelImpl.java:114)
    at org.eclipse.wst.xml.core.internal.document.ElementImpl.notifyAttrReplaced(ElementImpl.java:990)
    at org.eclipse.wst.xml.core.internal.document.ElementImpl.appendAttributeNode(ElementImpl.java:193)
    at org.eclipse.wst.xml.core.internal.document.ElementImpl.setAttribute(ElementImpl.java:1267)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.primUpdateDOMFeature(EMF2DOMAdapterImpl.java:1387)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.updateDOMFeature(EMF2DOMAdapterImpl.java:1629)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.notifyChanged(EMF2DOMAdapterImpl.java:1099)
    at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
    at org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl.setID(TranslatorResourceImpl.java:344)
    at org.eclipse.wst.common.internal.emf.utilities.IDUtil.assignID(IDUtil.java:50)
    at org.eclipse.wst.common.internal.emf.utilities.IDUtil.getOrAssignID(IDUtil.java:41)
    at org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResourceImpl.getURIFragment(CompatibilityXMIResourceImpl.java:112)
    at org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil.doBecomeProxy(ExtendedEcoreUtil.java:335)
    at org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil.becomeProxy(ExtendedEcoreUtil.java:329)
    at org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil.unload(ExtendedEcoreUtil.java:310)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.removeMOFValue(EMF2DOMAdapterImpl.java:553)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.primUpdateMOFMultiFeature(EMF2DOMAdapterImpl.java:512)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.updateMOFRootFeature(EMF2DOMAdapterImpl.java:1014)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.primUpdateMOF(EMF2DOMAdapterImpl.java:989)
    at org.eclipse.wst.common.internal.emf.resource.EMF2DOMAdapterImpl.updateMOF(EMF2DOMAdapterImpl.java:973)
    at org.eclipse.wst.xml.core.internal.emf2xml.EMF2DOMSSEAdapter.notifyChanged(EMF2DOMSSEAdapter.java:230)
    at org.eclipse.wst.sse.core.internal.provisional.AbstractNotifier.notify(AbstractNotifier.java:202)
    at org.eclipse.wst.xml.core.internal.document.XMLModelNotifierImpl.notifyStructureChanged(XMLModelNotifierImpl.java:392)
    at org.eclipse.wst.xml.core.internal.document.XMLModelNotifierImpl.endChanging(XMLModelNotifierImpl.java:180)
    at org.eclipse.wst.xml.core.internal.document.DOMModelImpl.changedModel(DOMModelImpl.java:167)
    at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel$DocumentToModelNotifier.nodesReplaced(AbstractStructuredModel.java:151)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument._fireEvent(BasicStructuredDocument.java:600)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.fireStructuredDocumentEvent(BasicStructuredDocument.java:1199)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.internalReplaceText(BasicStructuredDocument.java:1979)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2423)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replaceText(BasicStructuredDocument.java:2408)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.access$2(JobSafeStructuredDocument.java:1)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument$3.run(JobSafeStructuredDocument.java:141)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.wst.sse.ui.EditorExecutionContext.execute(EditorExecutionContext.java:149)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.replaceText(JobSafeStructuredDocument.java:144)
    at org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument.replace(BasicStructuredDocument.java:2368)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.access$0(JobSafeStructuredDocument.java:1)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument$1.run(JobSafeStructuredDocument.java:103)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.wst.sse.ui.EditorExecutionContext.execute(EditorExecutionContext.java:149)
    at org.eclipse.wst.sse.core.internal.text.JobSafeStructuredDocument.replace(JobSafeStructuredDocument.java:106)
    at org.eclipse.jface.text.projection.ProjectionTextStore.replace(ProjectionTextStore.java:111)
    at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1184)
    at org.eclipse.jface.text.AbstractDocument.replace(AbstractDocument.java:1210)
    at org.eclipse.jface.text.projection.ProjectionDocument.replace(ProjectionDocument.java:629)
    at org.eclipse.jface.text.DefaultDocumentAdapter.replaceTextRange(DefaultDocumentAdapter.java:248)
    at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:7317)
    at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:8168)
    at org.eclipse.swt.custom.StyledText.paste(StyledText.java:7381)
    at org.eclipse.jface.text.TextViewer.paste(TextViewer.java:4095)
    at org.eclipse.jface.text.TextViewer.doOperation(TextViewer.java:4024)
    at org.eclipse.jface.text.source.SourceViewer.doOperation(SourceViewer.java:1053)
    at org.eclipse.jface.text.source.projection.ProjectionViewer.doOperation(ProjectionViewer.java:1501)
    at org.eclipse.wst.sse.ui.internal.StructuredTextViewer.doOperation(StructuredTextViewer.java:473)
    at org.eclipse.ui.texteditor.TextOperationAction$1.run(TextOperationAction.java:128)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.texteditor.TextOperationAction.run(TextOperationAction.java:126)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
    at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:122)
    at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
    at sun.reflect.GeneratedMethodAccessor66.invoke(null:-1)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
    at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:247)
    at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:229)
    at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
    at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:149)
    at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499)
    at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
    at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:286)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:507)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:558)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:378)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:324)
    at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:86)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1574)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1412)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1437)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1422)
    at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1449)
    at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:825)
    at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:3310)
    at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:780)
    at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2123)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:5563)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4712)
    at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(OS.java:-2)
    at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:9174)
    at org.eclipse.swt.widgets.Display.eventProc(Display.java:1253)
    at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(OS.java:-2)
    at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2483)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3426)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:648)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:592)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
   
  

General Information:

    reported-by:      
    anonymous-id:     244023aa-bf80-4a54-9a4f-9cdfebac719d
    eclipse-build-id: 4.5.0.I20150203-1300
    eclipse-product:  org.eclipse.epp.package.jee.product
    operating system: Linux 3.16.0 (x86_64) - gtk
    jre-version:      1.8.0_40-internal-b09

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.core.commands_3.6.100.v20141026-0121
    2. org.eclipse.core.databinding.observable_1.4.1.v20140910-2107
    3. org.eclipse.core.databinding_1.4.100.v20141002-1314
    4. org.eclipse.core.runtime_3.10.0.v20150112-1422
    5. org.eclipse.e4.core.commands_0.10.2.v20140424-2344
    6. org.eclipse.e4.core.contexts_1.3.100.v20140407-1019
    7. org.eclipse.e4.core.di_1.4.0.v20140813-2240
    8. org.eclipse.e4.ui.bindings_0.10.200.v20140424-2042
    9. org.eclipse.e4.ui.workbench_1.3.0.v20150113-2327
    10. org.eclipse.e4.ui.workbench.swt_0.12.100.v20150114-0905
    11. org.eclipse.emf.common_2.11.0.v20150123-0347
    12. org.eclipse.emf_2.6.0.v20150123-0357
    13. org.eclipse.equinox.app_1.3.200.v20130910-1609
    14. org.eclipse.equinox.launcher_1.3.0.v20140415-2008
    15. org.eclipse.jface_3.11.0.v20150121-1751
    16. org.eclipse.jface.text_3.10.0.v20150112-1146
    17. org.eclipse.swt_3.104.0.v20150203-2243
    18. org.eclipse.ui_3.107.0.v20150107-0903
    19. org.eclipse.ui.ide.application_1.0.600.v20150120-1542
    20. org.eclipse.ui.ide_3.10.100.v20150126-1117
    21. org.eclipse.wst.common.emf_1.2.300.v201501292352
    22. org.eclipse.wst.sse.core_1.1.900.v201401092025
    23. org.eclipse.wst.sse.ui_1.3.301.v201501151629
    24. org.eclipse.wst.xml.core_1.1.902.v201501211904

Please note that:
* Messages, stacktraces, and nested status objects may be shortened.
* Bug fields like status, resolution, and whiteboard are sent
  back to reporters.
* The list of present bundles and their respective versions was
  calculated by package naming heuristics. This may or may not reflect reality.

Other Resources:
* Report: https://dev.eclipse.org/recommenders/committers/confess/#/problems/54e15a79e4b0948555dae518  
* Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide


Thank you for your assistance.
Your friendly error-reports-inbox.
Comment 1 Karsten Thoms CLA 2016-08-26 18:05:07 EDT
The problematic line is
		ProjectionDocumentEvent event= new ProjectionDocumentEvent(this, fOriginalEvent.getOffset(), fOriginalEvent.getLength(), fOriginalEvent.getText(), masterEvent);

See http://git.eclipse.org/c/platform/eclipse.platform.text.git/tree/org.eclipse.text/projection/org/eclipse/jface/text/projection/ProjectionDocument.java?h=R4_6_maintenance

Thus the NPE occurs because fOriginalEvent is null.
Comment 2 Eclipse Genie CLA 2020-08-04 19:07:28 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. As such, we're closing this bug.

If you have further information on the current state of the bug, please add it and reopen this bug. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.