[webkit-dev] [webkit-help] Issue with Web Inspector debugger breakpoint handling (on Wincairo)

Vienneau, Christopher cvienneau at ea.com
Fri Oct 2 13:29:57 PDT 2015


Hey Guys,

I'm redirecting Rupali's enquiry about WebInspector's Debugger and WinCairo to a new audience.  I came across this again the other day, I think all the debug information Rupali provided is still accurate for our current state.  In brief, when a breakpoint is hit in the debugger the pane that should show the source gets stuck as a circular time spinner.  This blocks a lot of functionality sine you can't see what you're debugging.  We would appreciate any tips on how to resolve this in WinCairo since our port behaves the same way.

Thanks

Chris

From: webkit-help-bounces at lists.webkit.org [mailto:webkit-help-bounces at lists.webkit.org] On Behalf Of Sharma, Rupali
Sent: Monday, August 31, 2015 11:34 AM
To: Sharma, Rupali <rupsharma at ea.com>; webkit-help at lists.webkit.org
Subject: Re: [webkit-help] Issue with Web Inspector debugger breakpoint handling (on Wincairo)

Hi folks,

Are you aware of this issue with web Inspector which we see on WinCairo?

Thanks,
Rupali

From: webkit-help-bounces at lists.webkit.org<mailto:webkit-help-bounces at lists.webkit.org> [mailto:webkit-help-bounces at lists.webkit.org] On Behalf Of Sharma, Rupali
Sent: Wednesday, August 26, 2015 11:16 AM
To: webkit-help at lists.webkit.org<mailto:webkit-help at lists.webkit.org>
Subject: [webkit-help] Issue with Web Inspector debugger breakpoint handling (on Wincairo)

Hello,

We are seeing an issue with the Web Inspector debugger on latest WinCairo [ using Webkit r188436]. In the wincairo webinpector, whenever a breakpoint is set and then web page reload on a javascript source, the view goes on into some indefinite waiting and never shows up, until we press continue-script-execution or another page-refresh.

Here are the simple steps to reproduce it,

1.       Launch WinCairo and go to google.com

2.       Open Web inspector and open the script source of any .js script

3.       Set a breakpoint anywhere

4.       Reload the web page

What we see is the spinner spinning and never the script source. However, if one presses continue-script-execution from the debugger controls, we get the view back.

Some points of debugging we did at our end,
(i) We did some digging around the breakpoint setting, and do see the flow correctly being going to handlepause() of the ScriptDebugServer. Though I see the vmEntryGlobalObject is not updated with any value or callframe.
I did not see any abnormality in the listener dispatching callback, with the correct pause-reason to pass i.e. Breakpoint. However, I am not sure if its sending the right pause-data to the frontend.

(ii)It gets stuck in the infinite eventloop which does look fine to me, as long as it is paused.

(iii)Another observation I see is, the message "TimelineRecordingStopped" being sent to the frontend. I believe, this is something newly added and not sure, if at all it'll effect the debugger scriptsource in any way. [reference : doDispatchMessageOnFrontendPage]

(iv)Coming onto the Web inspector UI side of story, I did see one bug, that even though  the method in DebuggerManager.js  "debuggerDidPause" got the right pause-reason from the webkit, its not able to pass on correctly due to an apparent bug in
_pauseReasonFromPayload: function(payload)
Here, the input payload does not match any of the  DebuggerAgent.PausedReason and hence falls to the error of unknown reason. The correct string to match would be "Breakpoint". However, correcting the flow still doesn't give us any favorable behavior. Though, I believe it's good to know.

Would you have a better insight as to what exactly is blocking the script source to display in the paused-state of web inspector debugger?

The output log looks like:
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - http://www.google.com/ with status = 200
EAWebKit:Event kLETLoadCompletedWithoutErrors : The load is completed without errors
Total Page Loaded                     : 1.139
Total Page Lib Tick Update                                              : 0.604  Slowest:: 0.521
Total Page View Tick Update           : 0.000  Slowest:: 0.000
Total Page Network Tick Update        : 0.000
Total Jobs Loop                       : 0.503  Slowest:: 0.489
Total Page Script                     : 0.000  Slowest:: 0.000
Font Glyph Draw                       : 0.000
Bitmap Image Draw                     : 0.000
Bitmap Image Decoder                  : 0.000
Image Compression                     : 0.000
Font/Image Raster Draw                : 0.000
TH Connect                            : 0.000
TH Transfer                           : 0.000
TH Disconnect                         : 0.000
TH Size                               : 0
TH Files                              : 0
Cached Connect                        : 0.000
Cached Transfer                       : 0.000
Cached Disconnect                     : 0.000
Cached Size                           : 0
Cached files                          : 0
Java Script Parse                     : 0.000
Java Script Execute                   : 0.000
CSS Sheet Parse                       : 0.000
Font Loading Time                     : 0.000
Page user1                            : 0.000
Page user2                            : 0.000
Page user3                            : 0.000
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - http://www.google.com/xjs/_/js/k=xjs.hp.en_US.dipijOltWAk.O/m=sb_he,d/rt=j/d=1/t=zcms/rs=ACT90oGH2j95ix8dWTU-Ejrgyf_E0GhQSQ with status = 200
2015/08/26-10:51:01.462 protoupnp: multicasting discovery request
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-464 Column-20 Message: DebuggerDidPause called ---->  got some data and reason
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-465 Column-20 Message: pause reason isBreakpoint
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-466 Column-20 Message: pause data is[object Object]
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-628 Column-20 Message: 1. payload to _pauseReasonFrompaylod is Breakpoint
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-635 Column-23 Message: >>> Payload is Breakpoint? is Breakpoint
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-478 Column-20 Message: pause reason isbreakpoint
EAWebKit: JS - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DebuggerManager.js> Line-504 Column-20 Message: pause reason isbreakpoint
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/Exception.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\Exception.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/BreakpointButton.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\BreakpointButton.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/ResultLine.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\ResultLine.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/Resume.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\Resume.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/Function.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\Function.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/PausedBreakpoint.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\PausedBreakpoint.svg> with status = 0
EAWebKit:Event kLETResourceResponseReceived : The server has responded to a resource request URL - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Images/Resume.svg<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Images\Resume.svg> with status = 0
EAWebKit: JS Error - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Protocol\InspectorBackend.js> Line-267 Column-22 Message: Request with id = 37 failed. {"code":-32601,"message":"'IndexedDB' domain was not found"}
EAWebKit: JS Error - file:///C:/EAOS/EAOS/EAWebKit/SB/InternalTeam/w-179714/EAWebKitDemoUTFWin/dev/data/WebInspectorUI/UserInterface/Controllers/DOMTreeManager.js<file:///C:\EAOS\EAOS\EAWebKit\SB\InternalTeam\w-179714\EAWebKitDemoUTFWin\dev\data\WebInspectorUI\UserInterface\Controllers\DOMTreeManager.js> Line-454 Column-30 Message: Error while getting the named flows for document 1: Could not find node with given id
2015/08/26-10:51:16.656 protoupnp: multicasting discovery request
The thread 0x2efc has exited with code 0 (0x0).
2015/08/26-10:51:31.656 protoupnp: multicasting discovery request
Thanks,
Rupali
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-dev/attachments/20151002/0cb5b595/attachment.html>


More information about the webkit-dev mailing list