1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-05 08:46:02 +02:00

Bug 144719: [Modules view] Modules from from different sessions are mixed up.

This commit is contained in:
Mikhail Khodjaiants 2006-05-31 18:35:49 +00:00
parent 1236d27b74
commit 263add60a9
4 changed files with 26 additions and 6 deletions

View file

@ -1,3 +1,7 @@
2006-05-31 Mikhail Khodjaiants
Bug 144719: [Modules view] Modules from from different sessions are mixed up.
* CDebugElement.java
2006-05-29 Mikhail Khodjaiants
Bug 108472: Debug continues to fail.
* DebugCoreMessages.properties

View file

@ -21,6 +21,7 @@ import org.eclipse.cdt.debug.core.model.CDebugElementState;
import org.eclipse.cdt.debug.core.model.ICDebugElement;
import org.eclipse.cdt.debug.core.model.ICDebugElementStatus;
import org.eclipse.cdt.debug.core.model.ICDebugTarget;
import org.eclipse.cdt.debug.core.model.IModuleRetrieval;
import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.PlatformObject;
@ -307,6 +308,8 @@ abstract public class CDebugElement extends PlatformObject implements ICDebugEle
// See bug #100261
if ( adapter.equals( IMemoryBlockRetrieval.class ) )
return getDebugTarget().getAdapter( adapter );
if ( adapter.equals( IModuleRetrieval.class ) )
return getDebugTarget().getAdapter( adapter );
if ( adapter.equals( ILaunch.class ) )
return getDebugTarget().getLaunch();
return super.getAdapter( adapter );

View file

@ -1,3 +1,7 @@
2006-05-31 Mikhail Khodjaiants
Bug 144719: [Modules view] Modules from from different sessions are mixed up.
* ModulesViewEventHandler.java
2006-05-31 Mikhail Khodjaiants
Bug 144684: [Modules view] Collapse all action doesn't work.
* CollapseAllModulesAction.java

View file

@ -58,11 +58,15 @@ public class ModulesViewEventHandler extends DebugEventHandler {
* @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handleCreate(org.eclipse.debug.core.DebugEvent)
*/
protected void handleCreate( DebugEvent event ) {
if ( event.getSource() instanceof IDebugTarget ) {
Object source = event.getSource();
if ( source instanceof IDebugTarget ) {
refreshRoot( event );
}
else if ( event.getSource() instanceof ICModule ) {
fireDelta( (ICModule)event.getSource(), IModelDelta.ADDED );
else if ( source instanceof ICModule ) {
if ( accept( (ICModule)source ) ) {
ICModule module = (ICModule)source;
fireDelta( module, IModelDelta.ADDED );
}
}
}
@ -70,11 +74,12 @@ public class ModulesViewEventHandler extends DebugEventHandler {
* @see org.eclipse.debug.internal.ui.viewers.update.DebugEventHandler#handleTerminate(org.eclipse.debug.core.DebugEvent)
*/
protected void handleTerminate( DebugEvent event ) {
if ( event.getSource() instanceof IDebugTarget ) {
Object source = event.getSource();
if ( source instanceof IDebugTarget ) {
refreshRoot( event );
}
else if ( event.getSource() instanceof ICModule ) {
fireDelta( (ICModule)event.getSource(), IModelDelta.REMOVED );
else if ( source instanceof ICModule ) {
fireDelta( (ICModule)source, IModelDelta.REMOVED );
}
}
@ -91,4 +96,8 @@ public class ModulesViewEventHandler extends DebugEventHandler {
super.dispose();
fModuleRetrieval = null;
}
private boolean accept( ICModule module ) {
return fModuleRetrieval.equals( module.getAdapter( IModuleRetrieval.class ) );
}
}