Closed Bug 1082612 Opened 10 years ago Closed 5 years ago

Debugger hangs when stepping quickly through source while watching variables

Categories

(DevTools :: Debugger, defect)

35 Branch
x86_64
Windows 8.1
defect
Not set
major

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: hsteen, Unassigned)

Details

(Whiteboard: needs-review)

Attachments

(1 file)

Attached file dbgstests.htm
See attached TC.

The debugger also hangs in current nightly (Fx 35.0a1), in a weird state where the UI looks like it's still stepping through, but neither "step" commands nor "run" commands work.
Interesting stuff in the console:

Handler function DebuggerClient.requester threw an exception: Error: eval command sent while not paused. Currently resuming
Stack: ThreadClient.prototype._assertPaused@resource://gre/modules/devtools/dbg-client.jsm:1502:13
ThreadClient.prototype.eval<.before@resource://gre/modules/devtools/dbg-client.jsm:1706:7
DebuggerClient.requester/<@resource://gre/modules/devtools/dbg-client.jsm:333:24
makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:83:14
StackFrames.prototype.evaluate@chrome://browser/content/devtools/debugger-controller.js:871:5
StackFrames.prototype._handleWatchExpressions<@chrome://browser/content/devtools/debugger-controller.js:971:11
TaskImpl_run@resource://gre/modules/Task.jsm:314:40
TaskImpl@resource://gre/modules/Task.jsm:275:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14
StackFrames.prototype._onFrames<@chrome://browser/content/devtools/debugger-controller.js:636:11
TaskImpl_run@resource://gre/modules/Task.jsm:314:40
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:744:7
EventLoop.prototype.enter@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/script.js:410:5
ThreadActor.prototype._pushThreadPause@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/script.js:605:5
ThreadActor.prototype._pauseAndRespond@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/script.js:779:7
ThreadActor.prototype._makeSteppingHooks/steppingHookState.pauseAndRespond@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/script.js:911:16
ThreadActor.prototype._makeOnStep/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/script.js:892:1
@file:///C:/Temp/dbgstests.htm:11:26

Line: 1502, column: 12 DevToolsUtils.js:59

A promise chain failed to handle a rejection. Did you forget to '.catch', or did you forget to 'return'?
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise

Date: Tue Oct 14 2014 17:11:02 GMT+0200 (Romansk (normaltid))
Full Message: Error: Active thread paused unexpectedly.
(To be clear: this is not a regression in Nightly, it also happens in release)
See Also: → 1132443
If we aren't already waiting a couple hundred ms to send the watch expression eval request, so that if you quickly step multiple times we don't ever send it, then we should start doing that. 

The error message looks like we just don't currently handle resumes happening quickly in the process of stepping. In fact, we might not be cancelling that timeout I mention above when you step.
> In fact, we might not be cancelling that timeout I mention above when you step.

Which would likely cause that error logged in comment 1.
Re-tested in Nightly, I can still trigger this problem with the attached test case.
Product: Firefox → DevTools
Whiteboard: needs-review
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WORKSFORME

This seems to work now so hopefully this was just an issue with the old debugger.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: