From 5bf19647c21c6a231034fb952c5571270c1f0b4e Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Fri, 15 Nov 2019 08:53:24 -0500 Subject: [Debugger] Fixed an NRE exception in OVTVController.RemoveValue if node.Parent is null Fixes https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1022024 --- .../ObjectValue/ObjectValueTreeViewController.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'main') diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/ObjectValueTreeViewController.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/ObjectValueTreeViewController.cs index 30801ce85c..13ebca43b2 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/ObjectValueTreeViewController.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/ObjectValueTreeViewController.cs @@ -299,12 +299,18 @@ namespace MonoDevelop.Debugger void RemoveValue (ObjectValueNode node) { var toplevel = node.Parent is RootObjectValueNode; - int index = node.Parent.Children.IndexOf (node); + int index; + + if (node.Parent != null) { + index = node.Parent.Children.IndexOf (node); + } else { + index = -1; + } UnregisterNode (node); OnEvaluationCompleted (node, new ObjectValueNode[0]); - if (AllowWatchExpressions && toplevel) + if (AllowWatchExpressions && toplevel && index != -1) ExpressionRemoved?.Invoke (this, new ExpressionRemovedEventArgs (index, node.Name)); } -- cgit v1.2.3