Fixes for Symbol Tree exceptions

This commit is contained in:
dragonmacher
2025-08-19 17:05:56 -04:00
parent 4172e448dd
commit 81fce4fed5
@@ -68,13 +68,18 @@ public abstract class SymbolCategoryNode extends SymbolTreeNode {
@Override
public List<GTreeNode> generateChildren(TaskMonitor monitor) throws CancelledException {
if (!isEnabled) {
return Collections.emptyList();
return List.of();
}
SymbolTreeRootNode root = (SymbolTreeRootNode) getRoot();
if (root == null) {
// this can happen if the tree is reloaded while we are searching in a background task
return List.of();
}
SymbolType symbolType = symbolCategory.getSymbolType();
List<GTreeNode> list = getSymbols(symbolType, monitor);
monitor.checkCancelled();
SymbolTreeRootNode root = (SymbolTreeRootNode) getRoot();
int groupThreshold = root.getNodeGroupThreshold();
return OrganizationNode.organize(list, groupThreshold, monitor);
}
@@ -322,6 +327,9 @@ public abstract class SymbolCategoryNode extends SymbolTreeNode {
if (this == o) {
return true;
}
if (o == null) {
return false;
}
if (getClass() != o.getClass()) {
return false;
}