Bug 35220 - Web Inspector: Assertion failure: !m_suspended in DOMTimer::suspend()
Summary: Web Inspector: Assertion failure: !m_suspended in DOMTimer::suspend()
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (Deprecated) (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac (Intel) OS X 10.6
: P2 Normal
Assignee: Nobody
URL: http://www.youtube.com/watch?v=jqxENM...
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-21 14:38 PST by Jeff Johnson
Modified: 2014-12-12 14:07 PST (History)
3 users (show)

See Also:


Attachments
gdb backtrace (8.56 KB, text/plain)
2010-02-21 14:38 PST, Jeff Johnson
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jeff Johnson 2010-02-21 14:38:29 PST
Created attachment 49173 [details]
gdb backtrace

Overview:
An assertion failure can occur in the Web Inspector while paused in the javascript debugger and switching back and forth between the debugger and console panes.

Steps to Reproduce:
1) Run Safari in debugger from WebKit.xcodeproj
2) Open http://www.youtube.com/watch?v=jqxENMKaeCU
3) Show Web Inspector
4) Select Scripts pane
6) Enable debugging for this session, if not enabled
7) Select www-core-new-vfl147421.js
8) Set breakpoints at lines 26 and 29
9) Reload the web page
10) When paused in the debugger, select the Console pane in the Web Inspector
11) Select the Scripts pane again

Actual Results:
ASSERTION FAILED: !m_suspended
(/Users/Shared/data/source/WebKit/WebCore/page/DOMTimer.cpp:181 virtual void WebCore::DOMTimer::suspend())

Expected Results:
No assertion failure

Build Date & Platform:
WebKit svn r55052 built from source, Debug configuration, Mac OS X 10.6.2 Build
10C540, Xcode 3.2.1

Additional Information:
Attached backtrace as file "jsdebugger-backtrace.txt".
Comment 1 Alexey Proskuryakov 2010-02-23 09:48:43 PST
I've seen it before, but could never find reproducible steps. I think it's related to slow script dialog in some way.

However, I can't follow these steps either. Lines 26 and 29 are comment lines, and execution doesn't stop when reloading. When I've set the breakpoint on some other line, it was hit, but I still didn't get the assertion.
Comment 2 Jeff Johnson 2010-02-23 10:04:21 PST
Alexey, are you sure you have the right file/lines? For me, line 26 is this:

I.createTextNode=function(a){return this.e[Ua](a)};I.ob=function(){return $d(this.e)};I.jb=function(){return this.e.parentWindow||this.e[pb]};I.nd=function(){return!Md&&$d(this.e)?this.e[vb]:this.e[G]};I.oa=function(){var a=!Md&&$d(this.e)?this.e[vb]:this.e[G];return new id(a[Zb],a[zb])};I.appendChild=function(a,b){a[q](b)};var ie=function(a){this.Ua={};this.ia={};this.F={};a=a||{};this.url=a.url||this.url;this.fa=a.url_v8||this.fa;this.za=a.min_version||this.za;this.Ua=a.args||md(fe);this.ia=a.attrs||md(ge);this.F=a.params||md(he)},fe={enablejsapi:1},ge={width:"100%",height:"100%"},he={allowscriptaccess:"always",allowfullscreen:"true",quality:"best",bgcolor:"#000000"};ie[B].url="";ie[B].fa="";ie[B].za="8.0.0";var je=function(){this.Kb=this.td();var
Comment 3 Jeff Johnson 2010-02-23 21:08:44 PST
You may be right about the slow script dialog. When I was trying to reproduce this bug with svn r55180, I got two slow script dialogs at once.

I also got this different assertion failure:
ASSERTION FAILED: hasListeners()
(/Users/Shared/data/source/WebKit/WebCore/bindings/js/ScriptDebugServer.cpp:344 void WebCore::ScriptDebugServer::dispatchFunctionToListeners(void (WebCore::ScriptDebugListener::*)(), WebCore::Page*))
Comment 4 Brian Burg 2014-12-12 14:07:23 PST
Closing as invalid, as this bug pertains to the old inspector UI and/or its tests.
Please file a new bug (https://www.webkit.org/new-inspector-bug) if the bug/feature/issue is still relevant to WebKit trunk.