From 77b141cf069349e918a8aadd80fc07b81f270674 Mon Sep 17 00:00:00 2001 From: Pawel Piech Date: Thu, 22 May 2008 05:00:56 +0000 Subject: [PATCH] [233372] - [view model] VM Cache gets corrupted causing it to get into spin-lock and freezing up the IDE. --- .../dd/dsf/ui/viewmodel/DefaultVMModelProxyStrategy.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/DefaultVMModelProxyStrategy.java b/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/DefaultVMModelProxyStrategy.java index 36591b75c7c..a27ca2bdcac 100644 --- a/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/DefaultVMModelProxyStrategy.java +++ b/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/DefaultVMModelProxyStrategy.java @@ -22,6 +22,7 @@ import org.eclipse.core.runtime.SafeRunner; import org.eclipse.dd.dsf.concurrent.ConfinedToDsfExecutor; import org.eclipse.dd.dsf.concurrent.CountingRequestMonitor; import org.eclipse.dd.dsf.concurrent.DataRequestMonitor; +import org.eclipse.dd.dsf.concurrent.DsfRunnable; import org.eclipse.dd.dsf.concurrent.IDsfStatusConstants; import org.eclipse.dd.dsf.concurrent.MultiRequestMonitor; import org.eclipse.dd.dsf.concurrent.RequestMonitor; @@ -179,9 +180,13 @@ public class DefaultVMModelProxyStrategy implements IVMModelProxy { * * @see org.eclipse.debug.internal.ui.viewers.provisional.IModelProxy#installed(org.eclipse.jface.viewers.Viewer) */ - public void installed(Viewer viewer) { + public void installed(final Viewer viewer) { fViewer = viewer; - fProvider.handleEvent(new ModelProxyInstalledEvent(this, viewer, fRootElement)); + getVMProvider().getExecutor().execute( new DsfRunnable() { + public void run() { + fProvider.handleEvent(new ModelProxyInstalledEvent(DefaultVMModelProxyStrategy.this, viewer, fRootElement)); + } + }); } /**