Community
Participate
Working Groups
In testing the PTP 5.0 6/3 build I loaded the source for my HPC Toolkit plugin and started an Eclipse runtime session to test if that plugin still worked. That plugin has an option to load an executable so that it can be instrumented for performance analysis. Part of theprocessing for loading an executable is to attempt to open the source files the executable as built from. When I do this, I am getting a null pointer exception with the traceback below and the editor fails to open. This worked with PTP 5.0 source I had extracted into my workspace last week. The code in my plugin where I attempt to open an editor with the source code is IDE.openEditorOnFileStore(page, ((PTPRemoteFile) list[j]).getFileObject()); where getFileObject returns an IFileStore object. I looked at that object in a debugger and it looks like it has the name of a remote tools connection I am using and the components of the file's source path. I'm not sure if this is something my plugin is doing wrong or if this is a bug in PTP code. at org.eclipse.ptp.rdt.managedbuilder.xlc.ui.environment.RemoteConfigurationEnvironmentSupplier.getRemoteEnvironment(RemoteConfigurationEnvironmentSupplier.java:121) at org.eclipse.ptp.rdt.managedbuilder.xlc.ui.environment.RemoteConfigurationEnvironmentSupplier.getVariable(RemoteConfigurationEnvironmentSupplier.java:57) at org.eclipse.cdt.managedbuilder.internal.envvar.ExternalExtensionEnvironmentSupplier.getVariable(ExternalExtensionEnvironmentSupplier.java:66) at org.eclipse.cdt.managedbuilder.internal.dataprovider.BuildEnvironmentContributor.getVariable(BuildEnvironmentContributor.java:53) at org.eclipse.cdt.internal.core.envvar.BuildSystemEnvironmentSupplier.getVariable(BuildSystemEnvironmentSupplier.java:169) at org.eclipse.cdt.internal.core.envvar.EnvironmentVariableManager.getVariable(EnvironmentVariableManager.java:157) at org.eclipse.cdt.internal.core.envvar.EnvironmentVariableManager.getVariable(EnvironmentVariableManager.java:190) at org.eclipse.cdt.managedbuilder.internal.envvar.EnvironmentVariableProvider.getVariable(EnvironmentVariableProvider.java:118) at org.eclipse.cdt.managedbuilder.internal.envvar.EnvironmentVariableProvider.getBuildPaths(EnvironmentVariableProvider.java:238) at org.eclipse.cdt.managedbuilder.internal.dataprovider.BuildEntryStorage.getEnvEntries(BuildEntryStorage.java:371) at org.eclipse.cdt.managedbuilder.internal.dataprovider.BuildEntryStorage.putEntriesToLevel(BuildEntryStorage.java:187) at org.eclipse.cdt.core.settings.model.util.AbstractEntryStorage.initCache(AbstractEntryStorage.java:71) at org.eclipse.cdt.core.settings.model.util.AbstractEntryStorage.getEntries(AbstractEntryStorage.java:34) at org.eclipse.cdt.managedbuilder.internal.dataprovider.BuildLanguageData.getEntries(BuildLanguageData.java:161) at org.eclipse.cdt.core.settings.model.extension.impl.CDefaultLanguageData.getEntriesToCopy(CDefaultLanguageData.java:98) at org.eclipse.cdt.core.settings.model.extension.impl.CDefaultLanguageData.createStore(CDefaultLanguageData.java:89) at org.eclipse.cdt.core.settings.model.extension.impl.CDefaultLanguageData.copySettingsFrom(CDefaultLanguageData.java:82) at org.eclipse.cdt.internal.core.settings.model.CLanguageSettingCache.copySettingsFrom(CLanguageSettingCache.java:48) at org.eclipse.cdt.internal.core.settings.model.CLanguageSettingCache.<init>(CLanguageSettingCache.java:37) at org.eclipse.cdt.internal.core.settings.model.CFolderDescriptionCache.copyLanguageData(CFolderDescriptionCache.java:72) at org.eclipse.cdt.core.settings.model.extension.impl.CDefaultFolderData.copyDataFrom(CDefaultFolderData.java:56) at org.eclipse.cdt.internal.core.settings.model.CFolderDescriptionCache.<init>(CFolderDescriptionCache.java:38) at org.eclipse.cdt.internal.core.settings.model.CConfigurationDescriptionCache.copyFolderData(CConfigurationDescriptionCache.java:193) at org.eclipse.cdt.core.settings.model.extension.impl.CDefaultConfigurationData.copySettingsFrom(CDefaultConfigurationData.java:113) at org.eclipse.cdt.internal.core.settings.model.CConfigurationDescriptionCache.loadData(CConfigurationDescriptionCache.java:99) at org.eclipse.cdt.internal.core.settings.model.CProjectDescription.loadDatas(CProjectDescription.java:196) at org.eclipse.cdt.internal.core.settings.model.xml.XmlProjectDescriptionStorage.loadProjectDescription(XmlProjectDescriptionStorage.java:486) at org.eclipse.cdt.internal.core.settings.model.xml.XmlProjectDescriptionStorage.getProjectDescription(XmlProjectDescriptionStorage.java:231) at org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager.getProjectDescriptionInternal(CProjectDescriptionManager.java:416) at org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager.getProjectDescription(CProjectDescriptionManager.java:398) at org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager.getProjectDescription(CProjectDescriptionManager.java:393) at org.eclipse.cdt.internal.core.settings.model.CProjectDescriptionManager.getProjectDescription(CProjectDescriptionManager.java:386) at org.eclipse.cdt.internal.core.model.CProject.computeSourceRoots(CProject.java:603) at org.eclipse.cdt.internal.core.model.CProject.computeChildren(CProject.java:624) at org.eclipse.cdt.internal.core.model.CProject.buildStructure(CProject.java:588) at org.eclipse.cdt.internal.core.model.Openable.generateInfos(Openable.java:265) at org.eclipse.cdt.internal.core.model.CElement.openWhenClosed(CElement.java:430) at org.eclipse.cdt.internal.core.model.CElement.getElementInfo(CElement.java:309) at org.eclipse.cdt.internal.core.model.CElement.getElementInfo(CElement.java:299) at org.eclipse.cdt.internal.core.model.Parent.getChildren(Parent.java:55) at org.eclipse.cdt.internal.core.model.CProject.getSourceRoots(CProject.java:480) at org.eclipse.cdt.internal.core.model.CModelManager.create(CModelManager.java:327) at org.eclipse.cdt.core.model.CoreModel.create(CoreModel.java:121) at org.eclipse.cdt.internal.ui.editor.CDocumentProvider.createTranslationUnit(CDocumentProvider.java:795) at org.eclipse.cdt.internal.ui.editor.CDocumentProvider.createFileInfo(CDocumentProvider.java:836) at org.eclipse.ui.editors.text.TextFileDocumentProvider.connect(TextFileDocumentProvider.java:478) at org.eclipse.cdt.internal.ui.editor.CDocumentProvider.connect(CDocumentProvider.java:779) at org.eclipse.ui.texteditor.AbstractTextEditor.doSetInput(AbstractTextEditor.java:4213) at org.eclipse.ui.texteditor.StatusTextEditor.doSetInput(StatusTextEditor.java:237) at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.doSetInput(AbstractDecoratedTextEditor.java:1451) at org.eclipse.ui.editors.text.TextEditor.doSetInput(TextEditor.java:169) at org.eclipse.cdt.internal.ui.editor.CEditor.internalDoSetInput(CEditor.java:1425) at org.eclipse.cdt.internal.ui.editor.CEditor.doSetInput(CEditor.java:1390) at org.eclipse.ptp.internal.rdt.ui.editor.RemoteCEditor.doSetInput(RemoteCEditor.java:166) at org.eclipse.ui.texteditor.AbstractTextEditor$19.run(AbstractTextEditor.java:3200) at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372) at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:759) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:756) at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2642) at org.eclipse.ui.texteditor.AbstractTextEditor.internalInit(AbstractTextEditor.java:3218) at org.eclipse.ui.texteditor.AbstractTextEditor.init(AbstractTextEditor.java:3245) at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:828) at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:647) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595) at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2945) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2850) at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2842) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2793) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2789) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2773) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2756) at org.eclipse.ui.ide.IDE.openEditorOnFileStore(IDE.java:1155) at com.ibm.research.hpct.tools.view.HPMView.openRemoteSourceFiles(HPMView.java:116) at com.ibm.research.hpct.tools.view.HPMView.selectionChanged(HPMView.java:174) at org.eclipse.ui.internal.AbstractSelectionService.fireSelection(AbstractSelectionService.java:156) at org.eclipse.ui.internal.AbstractSelectionService$1.selectionChanged(AbstractSelectionService.java:62) at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:164) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:162) at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2188) at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1211) at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1241) at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:239) at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:233) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:403) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4163) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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(Main.java:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Created attachment 197433 [details] patch Dave, please try this patch. Thanks.
Might be related to bug 368495