Community
Participate
Working Groups
Created attachment 230556 [details] Patch to check for remote file existence To reproduce: 1. Press F4 on a class such that the Remote Type Hierarchy has data in it. 2. Delete the header file that contains the definition of the class 3. Double-click on the class. The following exception is produced: java.lang.NullPointerException at org.eclipse.cdt.internal.ui.editor.CEditor.updateScalabilityMode(Unknown Source) at org.eclipse.cdt.internal.ui.editor.CEditor.doSetInput(Unknown Source) at org.eclipse.ptp.internal.rdt.editor.RemoteCEditor.doSetInput(Unknown Source) at org.eclipse.ui.texteditor.AbstractTextEditor$19.run(Unknown Source) at org.eclipse.jface.operation.ModalContext.runInCurrentThread(Unknown Source) at org.eclipse.jface.operation.ModalContext.run(Unknown Source) at org.eclipse.ui.internal.WorkbenchWindow$13.run(Unknown Source) at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) at org.eclipse.ui.internal.WorkbenchWindow.run(Unknown Source) at org.eclipse.ui.texteditor.AbstractTextEditor.internalInit(Unknown Source) at org.eclipse.ui.texteditor.AbstractTextEditor.init(Unknown Source) at org.eclipse.ui.internal.EditorReference.initialize(Unknown Source) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(Unknown Source) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(Unknown Source) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(Unknown Source) at org.eclipse.e4.core.internal.di.InjectorImpl.inject(Unknown Source) at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(Unknown Source) at org.eclipse.e4.core.internal.di.InjectorImpl.make(Unknown Source) at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(Unknown Source) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(Unknown Source) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(Unknown Source) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(Unknown Source) at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(Unknown Source) at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(Unknown Source) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$1.handleEvent(Unknown Source) at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(Unknown Source) at org.eclipse.swt.widgets.Synchronizer.syncExec(Unknown Source) at org.eclipse.ui.internal.UISynchronizer.syncExec(Unknown Source) at org.eclipse.swt.widgets.Display.syncExec(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(Unknown Source) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(Unknown Source) at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(Unknown Source) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(Unknown Source) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(Unknown Source) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(Unknown Source) at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(Unknown Source) at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(Unknown Source) at org.eclipse.equinox.internal.event.EventComponent.sendEvent(Unknown Source) at org.eclipse.e4.ui.services.internal.events.EventBroker.send(Unknown Source) at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(Unknown Source) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(Unknown Source) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(Unknown Source) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(Unknown Source) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(Unknown Source) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(Unknown Source) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(Unknown Source) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage.access$22(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage$8.run(Unknown Source) at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage.openEditor(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage.openEditor(Unknown Source) at org.eclipse.ui.internal.WorkbenchPage.openEditor(Unknown Source) at org.eclipse.cdt.internal.ui.util.EditorUtility.openInEditor(Unknown Source) at org.eclipse.cdt.internal.ui.util.EditorUtility.openInEditor(Unknown Source) at org.eclipse.ptp.internal.rdt.ui.typehierarchy.RemoteTHViewPart.openElement(Unknown Source) at org.eclipse.ptp.internal.rdt.ui.typehierarchy.RemoteTHViewPart.onOpenElement(Unknown Source) at org.eclipse.ptp.internal.rdt.ui.typehierarchy.RemoteTHViewPart$9.open(Unknown Source) at org.eclipse.jface.viewers.StructuredViewer$2.run(Unknown Source) at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) at org.eclipse.ui.internal.JFaceUtil$1.run(Unknown Source) at org.eclipse.jface.util.SafeRunnable.run(Unknown Source) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(Unknown Source) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(Unknown Source) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(Unknown Source) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(Unknown Source) at org.eclipse.jface.util.OpenStrategy.access$2(Unknown Source) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(Unknown Source) at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source) at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(Unknown Source) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Unknown Source) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(Unknown Source) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(Unknown Source) at org.eclipse.ui.internal.Workbench$5.run(Unknown Source) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Unknown Source) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.internal.ide.application.IDEApplication.start(Unknown Source) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(Unknown Source) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Unknown Source) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown Source) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Unknown Source) at org.eclipse.equinox.launcher.Main.basicRun(Unknown Source) at org.eclipse.equinox.launcher.Main.run(Unknown Source) at org.eclipse.equinox.launcher.Main.main(Unknown Source) A patch for a fix is attached.
Created attachment 230557 [details] Remote Call Hierarchy patch to check file existence The same problem also occurs for Remote Call Hierarchy view
Patches applied to ptp_6_0 and master. Thanks V.
Created attachment 230868 [details] patch to ensure that open works correctly in TH & CH views
Patch from comment 3 is for a regression from previous patch where open is broken when it should work.
Reopening as previous comment saved too early
Latest patch applied to ptp_6_0 and master.