Bug 55939

Summary: Web Inspector: resource errors are not reported before front-end is opened
Product: WebKit Reporter: Andrey Kosyakov <caseq>
Component: Web Inspector (Deprecated)Assignee: Andrey Kosyakov <caseq>
Status: RESOLVED FIXED    
Severity: Normal CC: apavlov, ap, bweinstein, joepeck, keishi, loislo, pfeldman, pmuellr, rik, timothy, yurys
Priority: P1 Keywords: Regression
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
patch
pfeldman: review-, pfeldman: commit-queue-
patch
none
patch pfeldman: review+, pfeldman: commit-queue-

Andrey Kosyakov
Reported 2011-03-08 07:11:03 PST
1. run Tools/Scripts/run-webkit-tests 2. Navigate to http://localhost:8000/inspector/console-resource-errors.html 3. Open WebInspector 4. Observe console is empty 5. reload 6. Observe resource errors are logged to console
Attachments
patch (4.16 KB, patch)
2011-03-08 08:28 PST, Andrey Kosyakov
pfeldman: review-
pfeldman: commit-queue-
patch (3.87 KB, patch)
2011-03-09 02:10 PST, Andrey Kosyakov
no flags
patch (3.89 KB, patch)
2011-03-09 04:42 PST, Andrey Kosyakov
pfeldman: review+
pfeldman: commit-queue-
Andrey Kosyakov
Comment 1 2011-03-08 08:28:30 PST
Alexey Proskuryakov
Comment 2 2011-03-08 10:33:52 PST
Could this have been done for performance reasons?
Andrey Kosyakov
Comment 3 2011-03-08 11:39:49 PST
(In reply to comment #2) > Could this have been done for performance reasons? I don't think we have much to spare there, considering the overhead of resource load. As long as we're sotring other error messages with no inspector front-end, I don't see why we shouldn't save resource errors. I think this used to work up until recently, so it must be just a bug.
Pavel Feldman
Comment 4 2011-03-08 12:34:20 PST
Comment on attachment 85051 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=85051&action=review > Source/WebCore/inspector/InspectorInstrumentation.cpp:441 > + if (hasFrontends()) { Timeline agent does not exist outside front-end lifetime. > Source/WebCore/inspector/InspectorInstrumentation.cpp:454 > + if (!hasFrontends()) Same for resource agent. What you should do is look up appropriate InspectorAgent instance and make consoleAgent call on it. > Source/WebCore/inspector/InspectorInstrumentation.h:674 > + if (cookie.first) We want to make sure that instrumentation is a no-op while there is no front-end. There are exceptional cases such as resource error reporting that should be handled manually.
Andrey Kosyakov
Comment 5 2011-03-09 02:10:22 PST
Created attachment 85148 [details] patch - call didReceiveResourceResponseImpl() unconditionally, retrieve agent from loader's frame if missing in cookie - also fixed didFailLoding
Andrey Kosyakov
Comment 6 2011-03-09 04:42:54 PST
Andrey Kosyakov
Comment 7 2011-03-09 06:51:38 PST
Note You need to log in before you can comment on or make changes to this bug.