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