Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 170325 Details for
Bug 314628
Unresolved breakpoint freezes application
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Prototype fix
zpatch.bp.txt (text/plain), 3.56 KB, created by
Marc Khouzam
on 2010-05-28 06:31:29 EDT
(
hide
)
Description:
Prototype fix
Filename:
MIME Type:
Creator:
Marc Khouzam
Created:
2010-05-28 06:31:29 EDT
Size:
3.56 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.cdt.dsf.gdb >Index: src/org/eclipse/cdt/dsf/mi/service/MIRunControl.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.cdt/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/MIRunControl.java,v >retrieving revision 1.26 >diff -u -r1.26 MIRunControl.java >--- src/org/eclipse/cdt/dsf/mi/service/MIRunControl.java 28 Apr 2010 23:50:49 -0000 1.26 >+++ src/org/eclipse/cdt/dsf/mi/service/MIRunControl.java 28 May 2010 10:25:22 -0000 >@@ -908,17 +908,29 @@ > /** > * @since 3.0 > */ >- public void executeWithTargetAvailable(IDMContext ctx, Sequence.Step[] steps, RequestMonitor rm) { >+ public void executeWithTargetAvailable(IDMContext ctx, Sequence.Step[] steps, final RequestMonitor rm) { > Vector<Step> totalStepsVector = new Vector<Step>(); > totalStepsVector.add(new IsTargetAvailableStep(ctx)); > totalStepsVector.add(new MakeTargetAvailableStep()); > for (Step step : steps) { > totalStepsVector.add(step); > } >- totalStepsVector.add(new RestoreTargetStateStep()); >+ >+ RequestMonitor cleanupRm = new RequestMonitor(getExecutor(), rm) { >+ @Override >+ protected void handleCompleted() { >+ rm.setStatus(getStatus()); >+ RestoreTargetState(new RequestMonitor(getExecutor(), rm) { >+ @Override >+ protected void handleCompleted() { >+ rm.done(); >+ } >+ }); >+ } >+ }; > > final Step[] totalSteps = totalStepsVector.toArray(new Step[totalStepsVector.size()]); >- getExecutor().execute(new Sequence(getExecutor(), rm) { >+ getExecutor().execute(new Sequence(getExecutor(), cleanupRm) { > @Override public Step[] getSteps() { return totalSteps; } > }); > } >@@ -936,6 +948,7 @@ > * ******************************************************************************/ > private IContainerDMContext fContainerDmc = null; > private boolean fTargetAvailable = false; >+ private boolean fMustResumeTarget = false; > > /** > * Returns whether the target is available to perform operations >@@ -1002,6 +1015,11 @@ > suspend(getContextToSuspend(), > new RequestMonitor(getExecutor(), rm) { > @Override >+ protected void handleSuccess() { >+ fMustResumeTarget = true; >+ super.handleSuccess(); >+ } >+ @Override > protected void handleFailure() { > // We weren't able to suspend, so abort the operation > fDisableNextSignalEvent = false; >@@ -1017,10 +1035,8 @@ > /** > * @since 3.0 > */ >- protected class RestoreTargetStateStep extends Sequence.Step { >- @Override >- public void execute(final RequestMonitor rm) { >- if (!isTargetAvailable()) { >+ protected void RestoreTargetState(RequestMonitor rm) { >+ if (fMustResumeTarget) { > assert fDisableNextRunningEvent == false; > fDisableNextRunningEvent = true; > >@@ -1031,6 +1047,7 @@ > new DataRequestMonitor<MIInfo>(getExecutor(), rm) { > @Override > protected void handleSuccess() { >+ fMustResumeTarget = false; > fSilencedSignalEvent = null; > super.handleSuccess(); > } >@@ -1039,7 +1056,8 @@ > protected void handleFailure() { > // Darn, we're unable to restart the target. Must cleanup! > fDisableNextRunningEvent = false; >- >+ fMustResumeTarget = false; >+ > // We must also sent the Stopped event that we had kept silent > if (fSilencedSignalEvent != null) { > eventDispatched(fSilencedSignalEvent); >@@ -1058,7 +1076,6 @@ > rm.done(); > } > } >- }; > > /** > * {@inheritDoc}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
marc.khouzam
:
iplog-
Actions:
View
|
Diff
Attachments on
bug 314628
:
170255
|
170325
|
170392
|
170399
|
170410