diff options
author | Eugene Tarassov | 2012-01-10 01:37:05 +0000 |
---|---|---|
committer | Eugene Tarassov | 2012-01-10 01:37:05 +0000 |
commit | 91fca7b97528e01015f9d63f51423a920a3b7d59 (patch) | |
tree | 8aa650e5edec66c8333f215fad3f29e270addbc1 | |
parent | a3580680071d820e6a27dd8d493f9141bdf3a1c4 (diff) | |
download | org.eclipse.tcf-91fca7b97528e01015f9d63f51423a920a3b7d59.tar.gz org.eclipse.tcf-91fca7b97528e01015f9d63f51423a920a3b7d59.tar.xz org.eclipse.tcf-91fca7b97528e01015f9d63f51423a920a3b7d59.zip |
TCF Debugger: fixed NPE in mouse hover expression viewer.
2 files changed, 9 insertions, 6 deletions
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFDetailPane.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFDetailPane.java index d08cb71e1..632147ece 100644 --- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFDetailPane.java +++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFDetailPane.java @@ -122,10 +122,13 @@ public class TCFDetailPane implements IDetailPane { } private void setGlobalAction(String id, IAction action){ - ((IViewSite)part_site).getActionBars().setGlobalActionHandler(id, action); + if (part_site instanceof IViewSite) { + ((IViewSite)part_site).getActionBars().setGlobalActionHandler(id, action); + } } private void createDetailContextMenu(Control menuControl) { + if (part_site == null) return; MenuManager manager = new MenuManager(); manager.setRemoveAllWhenShown(true); manager.addMenuListener(new IMenuListener() { @@ -184,16 +187,16 @@ public class TCFDetailPane implements IDetailPane { // Add a focus listener to update actions when details area gains focus source_viewer.getControl().addFocusListener(new FocusAdapter() { public void focusGained(FocusEvent e) { - part_site.setSelectionProvider(source_viewer.getSelectionProvider()); + if (part_site != null) part_site.setSelectionProvider(source_viewer.getSelectionProvider()); setGlobalAction(IDebugView.SELECT_ALL_ACTION, getAction(DETAIL_SELECT_ALL_ACTION)); setGlobalAction(IDebugView.COPY_ACTION, getAction(DETAIL_COPY_ACTION)); - ((IViewSite)part_site).getActionBars().updateActionBars(); + if (part_site instanceof IViewSite) ((IViewSite)part_site).getActionBars().updateActionBars(); } public void focusLost(FocusEvent e) { - part_site.setSelectionProvider(null); + if (part_site != null) part_site.setSelectionProvider(null); setGlobalAction(IDebugView.SELECT_ALL_ACTION, null); setGlobalAction(IDebugView.COPY_ACTION, null); - ((IViewSite)part_site).getActionBars().updateActionBars(); + if (part_site instanceof IViewSite) ((IViewSite)part_site).getActionBars().updateActionBars(); } }); // Add a context menu to the detail area diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelProxy.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelProxy.java index 99bfe77b5..84972913d 100644 --- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelProxy.java +++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelProxy.java @@ -427,7 +427,7 @@ public class TCFModelProxy extends AbstractModelProxy implements IModelProxy, Ru asyncExec(new Runnable() { boolean found; public void run() { - if (getViewer() instanceof InternalTreeModelViewer) { + if (getViewer() instanceof InternalTreeModelViewer) { found = ((InternalTreeModelViewer)getViewer()).findElementIndex(TreePath.EMPTY, launch) >= 0; } else if (getViewer() instanceof InternalVirtualTreeModelViewer) { found = ((InternalVirtualTreeModelViewer)getViewer()).findElementIndex(TreePath.EMPTY, launch) >= 0; |