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