diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog index 0351e891e5d..a1d9ea73146 100644 --- a/debug/org.eclipse.cdt.debug.core/ChangeLog +++ b/debug/org.eclipse.cdt.debug.core/ChangeLog @@ -1,3 +1,7 @@ +2002-11-21 Mikhail Khodjaiants + Added the handler of ICDIDestroyedEvent to 'CFormattedMemoryBlock. + * CFormattedMemoryBlock.java + 2002-11-20 Mikhail Khodjaiants Fix for bug 26595. The type of the address expression has been changed from String to ICDIExpression to handle diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java index b9013057159..35ef02886d8 100644 --- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java +++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java @@ -15,6 +15,7 @@ import org.eclipse.cdt.debug.core.IFormattedMemoryBlock; import org.eclipse.cdt.debug.core.IFormattedMemoryBlockRow; import org.eclipse.cdt.debug.core.cdi.CDIException; import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent; +import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent; 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.ICDIMemoryChangedEvent; @@ -570,6 +571,13 @@ public class CFormattedMemoryBlock extends CDebugElement handleAddressChangedEvent( (ICDIChangedEvent)event ); } } + else if ( event instanceof ICDIDestroyedEvent ) + { + if ( source instanceof ICDIExpression && source.equals( fAddressExpression ) ) + { + handleDestroyedEvent( (ICDIDestroyedEvent)event ); + } + } } } @@ -606,6 +614,11 @@ public class CFormattedMemoryBlock extends CDebugElement fireChangeEvent( DebugEvent.CONTENT ); } + private void handleDestroyedEvent( ICDIDestroyedEvent event ) + { + fireTerminateEvent(); + } + public Long[] getChangedAddresses() { return fChangedAddresses;