Bug 578558 - "Widget is disposed" while switching between debug views

Change-Id: I6d387b403178c7b3d4a0e28b9cf4595682dff22e
Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.debug/+/190372
Tested-by: Platform Bot <platform-bot@eclipse.org>
Reviewed-by: Sarika Sinha <sarika.sinha@in.ibm.com>
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/InternalTreeModelViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/InternalTreeModelViewer.java
index c7c4325..64215e3 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/InternalTreeModelViewer.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/viewers/model/InternalTreeModelViewer.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2016 IBM Corporation and others.
+ * Copyright (c) 2006, 2022 IBM Corporation and others.
  *
  * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
@@ -1776,6 +1776,9 @@
 
 	@Override
 	protected void handleTreeCollapse(TreeEvent event) {
+		if (event.item.isDisposed()) {
+			return;
+		}
 		super.handleTreeCollapse(event);
 		IContentProvider contentProvider = getContentProvider();
 		if (contentProvider instanceof TreeModelContentProvider && event.item.getData() != null) {