From 2300feae91abfac48b43b1f7927fe00caa986c2b Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Wed, 18 Sep 2002 21:44:05 +0000 Subject: [PATCH] Reset the expression's change flag on resume. --- .../internal/core/model/CExpression.java | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java index 9dfbad14a52..f4530a162e1 100644 --- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java +++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CExpression.java @@ -5,11 +5,11 @@ */ package org.eclipse.cdt.debug.internal.core.model; -import org.eclipse.cdt.debug.core.ICValue; -import org.eclipse.cdt.debug.core.cdi.CDIException; +import org.eclipse.cdt.debug.core.CDebugCorePlugin; import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent; -import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener; +import org.eclipse.cdt.debug.core.cdi.event.ICDIResumedEvent; import org.eclipse.cdt.debug.core.cdi.model.ICDIExpression; +import org.eclipse.cdt.debug.core.cdi.model.ICDITarget; import org.eclipse.debug.core.DebugException; import org.eclipse.debug.core.model.IExpression; import org.eclipse.debug.core.model.IValue; @@ -20,7 +20,7 @@ import org.eclipse.debug.core.model.IValue; * * @since Sep 17, 2002 */ -public class CExpression extends CVariable +public class CExpression extends CModificationVariable implements IExpression { /** @@ -71,4 +71,26 @@ public class CExpression extends CVariable { return (ICDIExpression)getCDIVariable(); } + + /** + * @see org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener#handleDebugEvent(ICDIEvent) + */ + public void handleDebugEvent( ICDIEvent event ) + { + if ( event instanceof ICDIResumedEvent ) + { + if ( event.getSource() instanceof ICDITarget && getCDITarget().equals( event.getSource() ) ) + { + try + { + setChanged( false ); + } + catch( DebugException e ) + { + CDebugCorePlugin.log( e ); + } + } + } + super.handleDebugEvent(event); + } }