Closed
Bug 1472107
Opened 6 years ago
Closed 6 years ago
Firefox nightly: "Edit and Resend" in developer tools won't let me change the url to send to.
Categories
(DevTools :: Netmonitor, defect, P2)
DevTools
Netmonitor
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: davydm, Unassigned, Mentored, NeedInfo)
Details
(Keywords: good-first-bug, Whiteboard: good-first-bug)
Attachments
(1 file)
59 bytes,
text/x-review-board-request
|
Details |
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0 Build ID: 20180627222831 Steps to reproduce: - Open dev tools - find a request to edit - attempt to edit the url of the request - you can type some new characters, but hitting backspace, delete or / causes the request editor to close Actual results: Request editor closes as I'm typing the new request url Expected results: Request editor should stay open and let me change the url. I was using this to compare results between an older backend endpoint and a newer one. Additional info: OS: Windows 10 Firefox version: 63.0a1 (2018-06-27)
Comment 1•6 years ago
|
||
It seems you need to press backspace a few times. Errore in console. TypeError: "https:// is not a valid URL." getUrlQueryresource://devtools/client/netmonitor/src/utils/request-utils.js:176:11renderresource://devtools/client/netmonitor/src/components/CustomRequestPanel.js:183:47finishClassComponentresource://devtools/client/shared/vendor/react-dom.js:7564:22updateClassComponentresource://devtools/client/shared/vendor/react-dom.js:7539:12beginWorkresource://devtools/client/shared/vendor/react-dom.js:7883:16performUnitOfWorkresource://devtools/client/shared/vendor/react-dom.js:9706:16workLoopresource://devtools/client/shared/vendor/react-dom.js:9753:26renderRootresource://devtools/client/shared/vendor/react-dom.js:9832:9performWorkOnRootresource://devtools/client/shared/vendor/react-dom.js:10465:24performWorkresource://devtools/client/shared/vendor/react-dom.js:10418:7batchedUpdatesresource://devtools/client/shared/vendor/react-dom.js:10537:9batchedUpdatesresource://devtools/client/shared/vendor/react-dom.js:2203:12dispatchEventresource://devtools/client/shared/vendor/react-dom.js:3353:5listenresource://devtools/client/shared/vendor/react-dom.js:3163:7trapBubbledEventresource://devtools/client/shared/vendor/react-dom.js:3313:10listenToresource://devtools/client/shared/vendor/react-dom.js:3676:9ensureListeningToresource://devtools/client/shared/vendor/react-dom.js:11899:31resource://devtools/client/shared/vendor/react-dom.js:12102:7finalizeInitialChildrenresource://devtools/client/shared/vendor/react-dom.js:12637:5completeWorkresource://devtools/client/shared/vendor/react-dom.js:8306:19completeUnitOfWorkresource://devtools/client/shared/vendor/react-dom.js:9631:18performUnitOfWorkresource://devtools/client/shared/vendor/react-dom.js:9709:14workLoopresource://devtools/client/shared/vendor/react-dom.js:9753:26renderRootresource://devtools/client/shared/vendor/react-dom.js:9832:9performWorkOnRootresource://devtools/client/shared/vendor/react-dom.js:10465:24performWorkresource://devtools/client/shared/vendor/react-dom.js:10418:7requestWorkresource://devtools/client/shared/vendor/react-dom.js:10329:7scheduleWorkImplresource://devtools/client/shared/vendor/react-dom.js:10188:11scheduleWorkresource://devtools/client/shared/vendor/react-dom.js:10152:12scheduleTopLevelUpdateresource://devtools/client/shared/vendor/react-dom.js:10629:5updateContainerresource://devtools/client/shared/vendor/react-dom.js:10655:7renderSubtreeIntoContainerresource://devtools/client/shared/vendor/react-dom.js:12805:7unbatchedUpdatesresource://devtools/client/shared/vendor/react-dom.js:10553:12renderSubtreeIntoContainerresource://devtools/client/shared/vendor/react-dom.js:12804:5renderresource://devtools/client/shared/vendor/react-dom.js:12861:12bootstrapresource://devtools/client/netmonitor/src/app.js:64:5openresource://devtools/client/netmonitor/panel.js:24:11onLoadresource://devtools/client/framework/toolbox.js:1693:19 react-dom.js:9297:5 logCapturedError resource://devtools/client/shared/vendor/react-dom.js:9297:5 captureError resource://devtools/client/shared/vendor/react-dom.js:10003:9 renderRoot resource://devtools/client/shared/vendor/react-dom.js:9857:22 performWorkOnRoot resource://devtools/client/shared/vendor/react-dom.js:10465:24 performWork resource://devtools/client/shared/vendor/react-dom.js:10418:7 batchedUpdates resource://devtools/client/shared/vendor/react-dom.js:10537:9 batchedUpdates resource://devtools/client/shared/vendor/react-dom.js:2203:12 dispatchEvent resource://devtools/client/shared/vendor/react-dom.js:3353:5 listen resource://devtools/client/shared/vendor/react-dom.js:3163:7 trapBubbledEvent resource://devtools/client/shared/vendor/react-dom.js:3313:10 listenTo resource://devtools/client/shared/vendor/react-dom.js:3676:9 ensureListeningTo resource://devtools/client/shared/vendor/react-dom.js:11899:3 setInitialProperties$1 resource://devtools/client/shared/vendor/react-dom.js:12102:7 finalizeInitialChildren resource://devtools/client/shared/vendor/react-dom.js:12637:5 completeWork resource://devtools/client/shared/vendor/react-dom.js:8306:19 completeUnitOfWork resource://devtools/client/shared/vendor/react-dom.js:9631:18 performUnitOfWork resource://devtools/client/shared/vendor/react-dom.js:9709:14 workLoop resource://devtools/client/shared/vendor/react-dom.js:9753:26 renderRoot resource://devtools/client/shared/vendor/react-dom.js:9832:9 performWorkOnRoot resource://devtools/client/shared/vendor/react-dom.js:10465:24 performWork resource://devtools/client/shared/vendor/react-dom.js:10418:7 requestWork resource://devtools/client/shared/vendor/react-dom.js:10329:7 scheduleWorkImpl resource://devtools/client/shared/vendor/react-dom.js:10188:11 scheduleWork resource://devtools/client/shared/vendor/react-dom.js:10152:12 scheduleTopLevelUpdate resource://devtools/client/shared/vendor/react-dom.js:10629:5 updateContainer resource://devtools/client/shared/vendor/react-dom.js:10655:7 renderSubtreeIntoContainer/< resource://devtools/client/shared/vendor/react-dom.js:12805:7 unbatchedUpdates resource://devtools/client/shared/vendor/react-dom.js:10553:12 renderSubtreeIntoContainer resource://devtools/client/shared/vendor/react-dom.js:12804:5 render resource://devtools/client/shared/vendor/react-dom.js:12861:12 bootstrap resource://devtools/client/netmonitor/src/app.js:64:5 open resource://devtools/client/netmonitor/panel.js:24:11 onLoad resource://devtools/client/framework/toolbox.js:1693:19
Status: UNCONFIRMED → NEW
Component: Untriaged → Netmonitor
Ever confirmed: true
Product: Firefox → DevTools
Comment 2•6 years ago
|
||
Thanks for the report! I can reproduce the issue on my machine too. Instructions for anyone interested in fixing this issue: 1) The problem is with `getUrlQuery` method: https://searchfox.org/mozilla-central/rev/97d488a17a848ce3bebbfc83dc916cf20b88451c/devtools/client/netmonitor/src/utils/request-utils.js#175 2) It throws an exception when the url passed in is not valid. 3) We need something like as follows: function getUrlQuery(url) { try { return (new URL(url)).search.replace(/^\?/, ""); } catch (err) { return null; } } Honza
Comment hidden (mozreview-request) |
Comment 4•6 years ago
|
||
mozreview-review |
Comment on attachment 8989818 [details] Bug 1472107 - Handle URL error in getUrlQuery. https://reviewboard.mozilla.org/r/254778/#review261688 Code analysis found 2 defects in this patch: - 2 defects found by mozlint You can run this analysis locally with: - `./mach lint path/to/file` (JS/Python) If you see a problem in this automated review, please report it here: http://bit.ly/2y9N9Vx ::: devtools/client/netmonitor/src/utils/request-utils.js:177 (Diff revision 1) > * @param {string} url - url string > * @return {string} unicode query of a url > */ > function getUrlQuery(url) { > + try { > - return (new URL(url)).search.replace(/^\?/, ""); > + return (new URL(url)).search.replace(/^\?/, ""); Error: Expected indentation of 4 spaces but found 5. [eslint: indent-legacy] ::: devtools/client/netmonitor/src/utils/request-utils.js:179 (Diff revision 1) > */ > function getUrlQuery(url) { > + try { > - return (new URL(url)).search.replace(/^\?/, ""); > + return (new URL(url)).search.replace(/^\?/, ""); > + } catch (err) { > + return null; Error: Expected indentation of 4 spaces but found 5. [eslint: indent-legacy]
Comment 5•6 years ago
|
||
@pavanon9: thanks for submitting a patch! I just assigned the bug to you. There are some eslint errors, can you please fix them! Honza
Assignee: nobody → pavanon9
Status: NEW → ASSIGNED
Flags: needinfo?(pavanon9)
Comment 6•6 years ago
|
||
(In reply to Jan Honza Odvarko [:Honza] from comment #5) > There are some eslint errors, can you please fix them! Sorry, the exclamation mark should not supposed to be there :) Honza
Updated•6 years ago
|
Assignee: pavanon9 → nobody
Status: ASSIGNED → NEW
Comment 7•6 years ago
|
||
Is it still open? Should I work on it? Looks like patch is already there, it needs some cleanup
Flags: needinfo?(odvarko)
Comment 8•6 years ago
|
||
Also how can I test this? is there some test already in the repo to verify this? Or it needs some tests to be written or just manual testing?
Comment 9•6 years ago
|
||
Which code base this needs to be fixed in? debbugger.html repo or mozilla central repo?
Comment 10•6 years ago
|
||
I just checked in searchfox, looks like the code has been changed now and it does the same thing as suggested in Comment 2
Comment 11•6 years ago
|
||
checked in Nightly 64.0a1 (2018-09-22) (64-bit) on MacOS I am not able to reproduce this issue
Comment 12•6 years ago
|
||
Ah, yes, this has been fixed as part of bug 1477915 Closing. Honza
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(odvarko)
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•