on master help sign in
trace back, keep your path, continue, lose your future history
commit180aff34bcb5f126c6055d1197e366ba49131f61 authorMichael James <michael@michaelbjames.com> dateWed 16 Jul 2014, 18:18 (12 years ago) parent1699f5a
1 file changed+10−4
runtime/Debugger.js+10−4
runtime/Debugger.js+10−4
@@ -199,6 +199,16 @@ function debuggerInit(debugModule, runtime, hotSwapState /* =undefined */) {
199199 function continueProgram() {
200200 if (debugModule.getPaused())
201201 {
202+ if(eventCounter === 0) {
203+ restartProgram();
204+ return;
205+ }
206+ resetProgram();
207+ var index = eventCounter;
208+ eventCounter = 0;
209+ debugModule.tracePath.clearTraces();
210+ debugModule.tracePath.startRecording();
211+ stepTo(index);
202212 debugModule.setPausedAt(false, eventCounter);
203213 }
204214 }
@@ -216,11 +226,8 @@ function debuggerInit(debugModule, runtime, hotSwapState /* =undefined */) {
216226 if (index < eventCounter) {
217227 resetProgram();
218228 eventCounter = 0;
219− debugModule.tracePath.clearTraces();
220229 }
221230
222− debugModule.tracePath.startRecording();
223−
224231 assert(index >= eventCounter, "index must be bad");
225232 while (eventCounter < index) {
226233 var nextEvent = debugModule.getRecordedEventAt(eventCounter);
@@ -229,7 +236,6 @@ function debuggerInit(debugModule, runtime, hotSwapState /* =undefined */) {
229236 eventCounter += 1;
230237 }
231238 assert(eventCounter == index, "while loop didn't work");
232− debugModule.tracePath.stopRecording();
233239 }
234240
235241 function getMaxSteps() {