Hi
John,
Thanks for your
effort. Here are my findings. I hope you find them
useful:
1) Jump to address combo box and
'Go to address' action under toolbar menu are not working. If these
features are not supported for CDI, then we should probably disable or hide
them.
2) Clicking on 'View Disassembly' from
<unknown> editor, opens up CDI disassembly instead of DSF disassembly. I
guess this can be switched when we replace CDI's disassembly.
<unknown> editor pops up after starting a debug session and the source
file cannot be found.
3) Resize disassembly view to a small
size, start a debug session, now resize it a bigger size, notice the empty
lines in disassembly view. Clicking on refresh doesn't resolve the
issue. Reselecting the stack frame populates the empty lines. I
believe this is a general problem with disassembly view. I reproduced it
with DSF debugger too.
- There are dotted lines displayed
between each source line (see snapshot below):
- I somehow get the following
exception. Sometimes I get it when I start a debug session and sometimes
I get it when I switch between views and switch back to DSF
Disassembly.
java.lang.ArrayIndexOutOfBoundsException:
1
at
org.eclipse.cdt.debug.internal.ui.disassembly.dsf.DisassemblyBackendCdi.retrieveFrameAddress(DisassemblyBackendCdi.java:177)
at
org.eclipse.cdt.dsf.debug.internal.ui.disassembly.DisassemblyPart.gotoFrame(DisassemblyPart.java:2077)
at
org.eclipse.cdt.dsf.debug.internal.ui.disassembly.DisassemblyPart.gotoFrame(DisassemblyPart.java:2036)
at
org.eclipse.cdt.dsf.debug.internal.ui.disassembly.DisassemblyPart.gotoFrameIfActive(DisassemblyPart.java:2045)
at
org.eclipse.cdt.dsf.debug.internal.ui.disassembly.DisassemblyPart.setActive(DisassemblyPart.java:1789)
at
org.eclipse.cdt.dsf.debug.internal.ui.disassembly.DisassemblyPart$1.partVisible(DisassemblyPart.java:296)
at
org.eclipse.ui.internal.PartListenerList2$7.run(PartListenerList2.java:172)
at
org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.runtime.Platform.run(Platform.java:888)
at
org.eclipse.ui.internal.PartListenerList2.fireEvent(PartListenerList2.java:55)
at
org.eclipse.ui.internal.PartListenerList2.firePartVisible(PartListenerList2.java:170)
at
org.eclipse.ui.internal.PartService.firePartVisible(PartService.java:253)
at
org.eclipse.ui.internal.WorkbenchPagePartList.firePartVisible(WorkbenchPagePartList.java:68)
at
org.eclipse.ui.internal.PartList.partVisible(PartList.java:288)
at
org.eclipse.ui.internal.PartList.access$2(PartList.java:277)
at
org.eclipse.ui.internal.PartList$1.propertyChanged(PartList.java:47)
at
org.eclipse.ui.internal.WorkbenchPartReference.fireInternalPropertyChange(WorkbenchPartReference.java:375)
at
org.eclipse.ui.internal.WorkbenchPartReference.fireVisibilityChange(WorkbenchPartReference.java:536)
at
org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:318)
at
org.eclipse.ui.internal.ViewPane.setVisible(ViewPane.java:529)
at
org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:180)
at
org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:270)
at
org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65)
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473)
at
org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1254)
at
org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1207)
at
org.eclipse.ui.internal.PartStack.presentationSelectionChanged(PartStack.java:841)
at
org.eclipse.ui.internal.PartStack.access$1(PartStack.java:827)
at
org.eclipse.ui.internal.PartStack$1.selectPart(PartStack.java:137)
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresentation$1.handleEvent(TabbedStackPresentation.java:133)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:269)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder.fireEvent(AbstractTabFolder.java:278)
at
org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder.access$1(DefaultTabFolder.java:1)
at
org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder$2.handleEvent(DefaultTabFolder.java:88)
at
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1050)
at
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1074)
at
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1059)
at
org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:773)
at
org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.java:3278)
at
org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:2049)
at
org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:331)
at
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1050)
at
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3984)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3577)
at
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2407)
at
org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2371)
at
org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2220)
at
org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
at
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
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:367)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at
java.lang.reflect.Method.invoke(Method.java:585)
at
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:611)
at
org.eclipse.equinox.launcher.Main.basicRun(Main.java:566)
at
org.eclipse.equinox.launcher.Main.run(Main.java:1363)
at
org.eclipse.equinox.launcher.Main.main(Main.java:1339)
Let me know if you have any
questions.
Regards,
Navid