diff --git a/Ghidra/Framework/Graph/src/main/java/ghidra/graph/VisualGraphComponentProvider.java b/Ghidra/Framework/Graph/src/main/java/ghidra/graph/VisualGraphComponentProvider.java
index b99aa03264..f15ff79a87 100644
--- a/Ghidra/Framework/Graph/src/main/java/ghidra/graph/VisualGraphComponentProvider.java
+++ b/Ghidra/Framework/Graph/src/main/java/ghidra/graph/VisualGraphComponentProvider.java
@@ -33,11 +33,11 @@ import ghidra.graph.viewer.event.mouse.VertexMouseInfo;
* A base component provider for displaying {@link VisualGraph}s
*
*
This class will provide many optional sub-features, enabled as desired by calling the
- * various addXyzFeature() methods.
+ * various addXyzFeature() methods.
*
*
Implementation Notes: to get full functionality, you must:
*
- * - Have your plugin call {@link #readConfigState(SaveState)} and
+ *
- Have your plugin call {@link #readConfigState(SaveState)} and
* {@link #writeConfigState(SaveState)} to save user settings.
*
* - Enable features you desire after calling your {@link #addToTool()} method.
@@ -49,9 +49,9 @@ import ghidra.graph.viewer.event.mouse.VertexMouseInfo;
* @param the graph type
*/
//@formatter:off
-public abstract class VisualGraphComponentProvider,
- G extends VisualGraph>
+public abstract class VisualGraphComponentProvider,
+ G extends VisualGraph>
extends ComponentProvider {
//@formatter:on
@@ -104,6 +104,10 @@ public abstract class VisualGraphComponentProvider getSelectedVertices() {
VisualGraphView view = getView();
VisualizationViewer viewer = view.getPrimaryGraphViewer();
+ if (viewer == null) {
+ // we have seen this happen on some systems; timing issue?
+ return Collections.emptySet();
+ }
PickedState pickedState = viewer.getPickedVertexState();
return pickedState.getPicked();
}
@@ -127,7 +131,7 @@ public abstract class VisualGraphComponentProvider