Breakpoints don't work in evaled sources
Categories
(DevTools :: Debugger, defect, P2)
Tracking
(firefox67 fixed)
Tracking | Status | |
---|---|---|
firefox67 | --- | fixed |
People
(Reporter: Harald, Assigned: bhackett1024)
References
(Blocks 1 open bug)
Details
Attachments
(3 files)
128.05 KB,
image/png
|
Details | |
455 bytes,
patch
|
loganfsmyth
:
review+
bhackett1024
:
superreview?
|
Details | Diff | Splinter Review |
1.87 KB,
patch
|
Details | Diff | Splinter Review |
STR:
- Open https://firefox-devtools-bug-1531826.glitch.me/
- Open Debugger and set a breakpoint in my-foo's
foo
method (see screenshot) - Click the
Foo
button
ER: Breakpoint gets hit.
AR: Foo executes but nothing pauses
Debugger statement pauses as expected when clicking Bar
.
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
The problem here is related to the '//# sourceURL=my-foo.js' in the eval'ed source, which assigns a URL to the source which the client can use. When the client wants to set a breakpoint in that source, it sends the URL down to the server, but then the server goes and compares the URL with the Debugger.Source's .url property, which is a different value ("http://whatever/script.js line 8 > eval"). I think it would make more sense to use the actor's .url property, which is almost the same as what was sent up to the client. (The source actor's form actually sends 'this.url.split(" -> ").pop()'; I don't know what this is for but hopefully it is no longer necessary.)
Assignee | ||
Comment 2•5 years ago
|
||
Updated•5 years ago
|
Pushed by bhackett@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/a52dffe6d7be Lookup sources by actor URL instead of source URL, r=lsmyth.
Comment 4•5 years ago
|
||
Backed out for perma fails on devtools/client/debugger/new/test/mochitest/browser_dbg-sourceURL-breakpoint.js.
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=232423781&repo=mozilla-inbound&lineNumber=14925
14:51:51 INFO - TEST-START | devtools/client/debugger/new/test/mochitest/browser_dbg-sourceURL-breakpoint.js
14:51:55 INFO - TEST-UNEXPECTED-FAIL | devtools/client/debugger/new/test/mochitest/browser_dbg-sourceURL-breakpoint.js | Uncaught exception - at resource://devtools/client/debugger/new/src/utils/source-maps.js:86 - TypeError: mappedLocation is undefined
14:51:55 INFO - Stack trace:
14:51:55 INFO - getSelectedLocation@resource://devtools/client/debugger/new/src/utils/source-maps.js:86:52
14:51:55 INFO - getFirstBreakpointColumn@chrome://mochitests/content/browser/devtools/client/debugger/new/test/mochitest/helpers.js:744:10
14:51:55 INFO - addBreakpoint@chrome://mochitests/content/browser/devtools/client/debugger/new/test/mochitest/helpers.js:761:22
14:51:55 INFO - @chrome://mochitests/content/browser/devtools/client/debugger/new/test/mochitest/browser_dbg-sourceURL-breakpoint.js:7:9
14:51:55 INFO - Async*Tester_execTest/<@chrome://mochikit/content/browser-test.js:1106:34
14:51:55 INFO - Tester_execTest@chrome://mochikit/content/browser-test.js:1134:12
14:51:55 INFO - nextTest/<@chrome://mochikit/content/browser-test.js:995:14
14:51:55 INFO - SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:803:59
14:51:55 INFO - Leaving test bound
14:51:55 INFO - GECKO(904) | ++DOMWINDOW == 26 (0x11dfdb400) [pid = 904] [serial = 457] [outer = 0x11a4584c0]
14:51:55 INFO - GECKO(904) | console.warn: "Error while detaching the thread front: 'detach' request packet to 'server1.conn67.child1/context22' can't be sent as the connection is closed."
14:51:56 INFO - GECKO(904) | --DOMWINDOW == 25 (0x12e2b6000) [pid = 904] [serial = 450] [outer = 0x0] [url = about:blank]
14:51:56 INFO - GECKO(904) | --DOMWINDOW == 24 (0x11ee5a000) [pid = 904] [serial = 446] [outer = 0x0] [url = about:blank]
14:51:56 INFO - GECKO(904) | --DOMWINDOW == 23 (0x12e2b2c00) [pid = 904] [serial = 449] [outer = 0x0] [url = about:blank]
14:51:56 INFO - GECKO(904) | --DOMWINDOW == 22 (0x12e0e3400) [pid = 904] [serial = 447] [outer = 0x0] [url = about:devtools-toolbox]
14:51:57 INFO - GECKO(904) | [Parent 904, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 135
14:51:57 INFO - GECKO(904) | [Parent 904, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 135
14:51:57 INFO - GECKO(904) | [Parent 904, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 135
14:51:57 INFO - GECKO(904) | [Parent 904, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 135
14:51:57 INFO - Removing tab.
14:51:57 INFO - Waiting for event: 'TabClose' on [object XULElement].
14:51:57 INFO - Got event: 'TabClose' on [object XULElement].
14:51:57 INFO - Tab removed and finished closing
14:51:57 INFO - GECKO(904) | --DOMWINDOW == 21 (0x11de962e0) [pid = 904] [serial = 443] [outer = 0x0] [url = chrome://devtools/content/debugger/new/index.html]
14:51:57 INFO - GECKO(904) | --DOMWINDOW == 20 (0x11a4c7100) [pid = 904] [serial = 440] [outer = 0x0] [url = about:blank]
14:51:57 INFO - GECKO(904) | --DOCSHELL 0x1150e5000 == 8 [pid = 904] [id = {4a5c08e6-fe24-ad4c-b905-dded8ddaac6c}] [url = about:blank]
14:51:57 INFO - GECKO(904) | --DOCSHELL 0x1150c7800 == 7 [pid = 904] [id = {0a230fb4-21ef-4c4a-b9e6-cad76cf5ad0c}] [url = chrome://devtools/content/debugger/new/index.html]
14:51:57 INFO - GECKO(904) | MEMORY STAT | vsize 4530MB | residentFast 626MB | heapAllocated 144MB
Backout: https://hg.mozilla.org/integration/mozilla-inbound/rev/da8c06756fcc409c30a986abcffd040f02b4bdff
Pushed by bhackett@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/a8c07059ab92 Lookup sources by actor URL instead of source URL, r=lsmyth.
Comment 6•5 years ago
|
||
bugherder |
Assignee | ||
Updated•5 years ago
|
Description
•