Community
Participate
Working Groups
In RC2 Papyrus contributes an NPE to actions such as selecting a file in the project explorer of closing the SAmple Ecore Editor. a) why is Papyrus involved at this point? b) the NPE: Thread [main] (Suspended (exception NullPointerException)) HideEmptyColumnState.refreshState() line: 37 HideEmptyColumnState(AbstractToggleStateProvider).selectionChanged(IWorkbenchPart, ISelection) line: 84 WindowSelectionService(AbstractSelectionService).fireSelection(IWorkbenchPart, ISelection) line: 156 WindowSelectionService(AbstractSelectionService).setActivePart(IWorkbenchPart) line: 282 WWinPartService.updateActivePart() line: 135 WWinPartService.access$0(WWinPartService) line: 125 WWinPartService$WWinListener.partDeactivated(IWorkbenchPartReference) line: 50 PartListenerList2$4.run() line: 115 SafeRunner.run(ISafeRunnable) line: 42 Platform.run(ISafeRunnable) line: 888 PartListenerList2.fireEvent(SafeRunnable, IPartListener2, IWorkbenchPartReference, String) line: 55 PartListenerList2.firePartDeactivated(IWorkbenchPartReference) line: 113 PartService.firePartDeactivated(IWorkbenchPartReference) line: 242 PartService.setActivePart(IWorkbenchPartReference) line: 300 WorkbenchPagePartList.fireActivePartChanged(IWorkbenchPartReference, IWorkbenchPartReference) line: 57 WorkbenchPagePartList(PartList).setActivePart(IWorkbenchPartReference) line: 136 WorkbenchPage.setActivePart(IWorkbenchPart, boolean) line: 3636 WorkbenchPage.internalActivate(IWorkbenchPart, boolean) line: 691 WorkbenchPage.activate(IWorkbenchPart) line: 663 WorkbenchPage.makeActive(IWorkbenchPartReference) line: 1324 WorkbenchPage.updateActivePart() line: 1304 WorkbenchPage.handleDeferredEvents() line: 1496 WorkbenchPage.deferUpdates(boolean) line: 1485 WorkbenchPage.closeEditors(IEditorReference[], boolean) line: 1459 WorkbenchPage.closeEditor(IEditorReference, boolean) line: 1514 EditorPane.doHide() line: 61 EditorStack(PartStack).close(IPresentablePart) line: 537 EditorStack.close(IPresentablePart[]) line: 206 PartStack$1.close(IPresentablePart[]) line: 120 TabbedStackPresentation$1.handleEvent(TabFolderEvent) line: 83 DefaultTabFolder(AbstractTabFolder).fireEvent(TabFolderEvent) line: 269 DefaultTabFolder(AbstractTabFolder).fireEvent(int, AbstractTabItem) line: 278 DefaultTabFolder.access$1(DefaultTabFolder, int, AbstractTabItem) line: 1 DefaultTabFolder$1.closeButtonPressed(CTabItem) line: 71 PaneFolder.notifyCloseListeners(CTabItem) line: 631 PaneFolder$3.close(CTabFolderEvent) line: 206 CTabFolder.onMouse(Event) line: 1598 CTabFolder$1.handleEvent(Event) line: 261 EventTable.sendEvent(Event) line: 84 CTabFolder(Widget).sendEvent(Event) line: 1053 Display.runDeferredEvents() line: 4163 Display.readAndDispatch() line: 3752 Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2696 Workbench.runUI() line: 2660 Workbench.access$4(Workbench) line: 2494 Workbench$7.run() line: 674 Realm.runWithDefault(Realm, Runnable) line: 332 Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 667 PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149 IDEApplication.start(IApplicationContext) line: 123 EclipseAppHandle.run(Object) line: 196 EclipseAppLauncher.runApplication(Object) line: 110 EclipseAppLauncher.start(Object) line: 79 EclipseStarter.run(Object) line: 344 EclipseStarter.run(String[], Runnable) line: 179 NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39 DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 592 Main.invokeFramework(String[], URL[]) line: 622 Main.basicRun(String[]) line: 577 Main.run(String[]) line: 1410 Main.main(String[]) line: 1386
Just seen this woth 0.9 on 3.8M5 when starting up a debug session with no open Papyrus files.
And in OnlyCommonColumnsState. If the activation is needed, it should at least wait till Eclipse has started.
One year on and another RC2, and now this occurs while open a new Eclipse nested workspace: Thread [main] (Suspended (exception NullPointerException)) HideEmptyColumnState.refreshState() line: 37 HideEmptyColumnState(AbstractToggleStateProvider).selectionChanged(IWorkbenchPart, ISelection) line: 89 SelectionService.notifyListeners(String, IWorkbenchPart, ISelection) line: 140 SelectionService.updateSelection(IWorkbenchPart) line: 108 WorkbenchPage$E4PartListener.partActivated(MPart) line: 166 PartServiceImpl$2.run() line: 190 SafeRunner.run(ISafeRunnable) line: 42 PartServiceImpl.firePartActivated(MPart) line: 188 PartServiceImpl.setPart(MPart) line: 163 GeneratedMethodAccessor17.invoke(Object, Object[]) line: not available DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 592 MethodRequestor.execute() line: 56 ContextObjectSupplier$ContextInjectionListener.update(IEclipseContext, int, Object[]) line: 77 TrackableComputationExt.update(ContextChangeEvent) line: 106 EclipseContext.processScheduled(Set<Scheduled>) line: 308 EclipseContext.set(String, Object) line: 322 EclipseContext.activate() line: 608 EclipseContext.activateBranch() line: 613 PartActivationHistory.activate(MPart, boolean) line: 52 PartServiceImpl.activate(MPart, boolean, boolean) line: 560 PartServiceImpl.activate(MPart, boolean) line: 531 ContributedPartRenderer(AbstractPartRenderer).activate(MPart) line: 105 ContributedPartRenderer$1.handleEvent(Event) line: 61 EventTable.sendEvent(Event) line: 84 ContributedPartRenderer$2(Widget).sendEvent(Event) line: 1053 ContributedPartRenderer$2(Widget).sendEvent(int, Event, boolean) line: 1077 ContributedPartRenderer$2(Widget).sendEvent(int) line: 1058 Shell.setActiveControl(Control) line: 1447 Shell.WM_MOUSEACTIVATE(int, int) line: 2328 Shell(Control).windowProc(int, int, int, int) line: 4572 Shell(Canvas).windowProc(int, int, int, int) line: 341 Shell(Decorations).windowProc(int, int, int, int) line: 1627 Shell.windowProc(int, int, int, int) line: 2069 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 CTabFolder(Scrollable).callWindowProc(int, int, int, int) line: 80 CTabFolder(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 ContributedPartRenderer$2(Scrollable).callWindowProc(int, int, int, int) line: 80 ContributedPartRenderer$2(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Composite(Scrollable).callWindowProc(int, int, int, int) line: 80 Composite(Control).windowProc(int, int, int, int) line: 4623 Display.windowProc(int, int, int, int) line: 4989 OS.DefWindowProcW(int, int, int, int) line: not available [native method] OS.DefWindowProc(int, int, int, int) line: 2541 Tree.callWindowProc(int, int, int, int) line: 1442 Tree.windowProc(int, int, int, int) line: 5859 Display.windowProc(int, int, int, int) line: 4989 OS.CallWindowProcW(int, int, int, int, int) line: not available [native method] OS.CallWindowProc(int, int, int, int, int) line: 2440 Tree.callWindowProc(int, int, int, int) line: 1534 Tree(Control).windowProc(int, int, int, int) line: 4623 Tree.windowProc(int, int, int, int) line: 5958 Display.windowProc(int, int, int, int) line: 4989 OS.PeekMessageW(MSG, int, int, int, int) line: not available [native method] OS.PeekMessage(MSG, int, int, int, int) line: 3129 Display.readAndDispatch() line: 3753 PartRenderingEngine$9.run() line: 1021 Realm.runWithDefault(Realm, Runnable) line: 332 PartRenderingEngine.run(MApplicationElement, IEclipseContext) line: 915 E4Workbench.createAndRunUI(MApplicationElement) line: 86 Workbench$5.run() line: 585 Realm.runWithDefault(Realm, Runnable) line: 332 Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 540 PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149 IDEApplication.start(IApplicationContext) line: 124 EclipseAppHandle.run(Object) line: 196 EclipseAppLauncher.runApplication(Object) line: 110 EclipseAppLauncher.start(Object) line: 79 EclipseStarter.run(Object) line: 353 EclipseStarter.run(String[], Runnable) line: 180 NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39 DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 592 Main.invokeFramework(String[], URL[]) line: 629 Main.basicRun(String[]) line: 584 Main.run(String[]) line: 1438 Main.main(String[]) line: 1414 At this point there are no projects in the workspace, no editors, so why is Papyrus active?
Ping. Any chance of fixing this? I have to uninstall Papyrus in order to avoid these NPEs when debugging my own code.
R9637 : corrected on branch 0.9.X R9638 : corrected on trunk This bug can be marked as closed fixed. impacted plugins : - oep.infra.table.common - oep.infra.table.menu
Thanks. (I hope you managed to find all the similar usages.)