From 1fe4a27abfcec5a9d3da1807470b89410b21adf0 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 27 Jun 2022 15:21:30 -0700 Subject: [PATCH] Watch range check fix --- IDE/src/ui/WatchPanel.bf | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/IDE/src/ui/WatchPanel.bf b/IDE/src/ui/WatchPanel.bf index cd03670d..f4de9e67 100644 --- a/IDE/src/ui/WatchPanel.bf +++ b/IDE/src/ui/WatchPanel.bf @@ -2752,20 +2752,29 @@ namespace IDE.ui } else if (memberVals0 == ":addrs") { - WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); - String.NewOrSet!(memberItem.mWatchSeriesInfo.mAddrs, memberVals[1]); - memberItem.mWatchSeriesInfo.mAddrsEntrySize = 1; + if (memberCount > 0) + { + WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); + String.NewOrSet!(memberItem.mWatchSeriesInfo.mAddrs, memberVals[1]); + memberItem.mWatchSeriesInfo.mAddrsEntrySize = 1; + } } else if (memberVals0 == ":addrsEntrySize") { - int32 addrsEntrySize = int32.Parse(scope String(memberVals[1])); - WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); - memberItem.mWatchSeriesInfo.mAddrsEntrySize = addrsEntrySize; + if (memberCount > 0) + { + int32 addrsEntrySize = int32.Parse(scope String(memberVals[1])); + WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); + memberItem.mWatchSeriesInfo.mAddrsEntrySize = addrsEntrySize; + } } else if (memberVals0 == ":continuation") { - WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); - String.NewOrSet!(memberItem.mWatchSeriesInfo.mContinuationData, memberVals[1]); + if (memberCount > 0) + { + WatchListViewItem memberItem = (WatchListViewItem)listViewItem.GetChildAtIndex(memberCount - 1); + String.NewOrSet!(memberItem.mWatchSeriesInfo.mContinuationData, memberVals[1]); + } } else if (memberVals0 == ":action") {