WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
57551
[GTK] Expose the shadow DOM to DumpRenderTree JS tests.
https://bugs.webkit.org/show_bug.cgi?id=57551
Summary
[GTK] Expose the shadow DOM to DumpRenderTree JS tests.
Dominic Cooney
Reported
2011-03-31 08:40:17 PDT
GTK DRT should implement layoutTestController.shadowRoot like Chromium DRT (
bug 56573
) and Mac DRT (
bug 57415
).
Attachments
Patch
(5.31 KB, patch)
2011-03-31 09:58 PDT
,
Dominic Cooney
no flags
Details
Formatted Diff
Diff
Patch
(5.30 KB, patch)
2011-04-01 19:09 PDT
,
Dominic Cooney
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Dominic Cooney
Comment 1
2011-03-31 09:58:09 PDT
Created
attachment 87752
[details]
Patch
Martin Robinson
Comment 2
2011-04-01 09:20:53 PDT
Comment on
attachment 87752
[details]
Patch Great! Thanks for looking after our DRT.
WebKit Commit Bot
Comment 3
2011-04-01 14:33:46 PDT
The commit-queue encountered the following flaky tests while processing
attachment 87752
[details]
: java/lc3/JSObject/ToObject-001.html
bug 53091
(author:
ap@webkit.org
) The commit-queue is continuing to process your patch.
WebKit Commit Bot
Comment 4
2011-04-01 14:36:36 PDT
Comment on
attachment 87752
[details]
Patch Clearing flags on attachment: 87752 Committed
r82721
: <
http://trac.webkit.org/changeset/82721
>
WebKit Commit Bot
Comment 5
2011-04-01 14:36:41 PDT
All reviewed patches have been landed. Closing bug.
Martin Robinson
Comment 6
2011-04-01 18:20:05 PDT
This caused an assertion failure on the debug bots so I rolled it out. I think that you just need to add a JSLock lock(SilenceAssertionsOnly); at the beginning of the DRTSupportGtk method. Sorry that I did not notice this in my review! #0 0x00002b40c08cca85 in JSC::Heap::allocate (this=0x2b40d0019140, bytes=48) at ../../Source/JavaScriptCore/runtime/JSCell.h:415 415 ASSERT(JSLock::lockCount() > 0); Thread 1 (Thread 4222): #0 0x00002b40c08cca85 in JSC::Heap::allocate (this=0x2b40d0019140, bytes=48) at ../../Source/JavaScriptCore/runtime/JSCell.h:415 #1 0x00002b40c08ccbd5 in JSC::JSCell::operator new (size=48, exec=0x2b4114012088) at ../../Source/JavaScriptCore/runtime/JSCell.h:436 #2 0x00002b40c145d344 in WebCore::JSHTMLSelectElement::createPrototype (exec=0x2b4114012088, globalObject=0x2b4114420850) at DerivedSources/WebCore/JSHTMLSelectElement.cpp:179 #3 0x00002b40c141da7b in WebCore::getDOMStructure<WebCore::JSHTMLSelectElement> (exec=0x2b4114012088, globalObject=0x2b4114420850) at ../../Source/WebCore/bindings/js/JSDOMBinding.h:146 #4 0x00002b40c141a177 in WebCore::createDOMNodeWrapper<WebCore::JSHTMLSelectElement, WebCore::HTMLSelectElement> (exec=0x2b4114012088, globalObject=0x2b4114420850, node=0x2b40d097ddb0) at ../../Source/WebCore/bindings/js/JSDOMBinding.h:181 #5 0x00002b40c1411933 in WebCore::createHTMLSelectElementWrapper (exec=0x2b4114012088, globalObject=0x2b4114420850, element=...) at DerivedSources/WebCore/JSHTMLElementWrapperFactory.cpp:517 #6 0x00002b40c1413b30 in WebCore::createJSHTMLWrapper (exec=0x2b4114012088, globalObject=0x2b4114420850, element=...) at DerivedSources/WebCore/JSHTMLElementWrapperFactory.cpp:694 #7 0x00002b40c091d751 in WebCore::createWrapperInline (exec=0x2b4114012088, globalObject=0x2b4114420850, node=0x2b40d097ddb0) at ../../Source/WebCore/bindings/js/JSNodeCustom.cpp:173 #8 0x00002b40c091d984 in WebCore::createWrapper (exec=0x2b4114012088, globalObject=0x2b4114420850, node=0x2b40d097ddb0) at ../../Source/WebCore/bindings/js/JSNodeCustom.cpp:223 #9 0x00002b40c07b2807 in WebCore::toJS (exec=0x2b4114012088, globalObject=0x2b4114420850, node=0x2b40d097ddb0) at ../../Source/WebCore/bindings/js/JSNodeCustom.h:57 #10 0x00002b40c07b34cd in WebCore::toJS<WebCore::Node> (exec=0x2b4114012088, ptr=0x2b40d097ddb0) at ../../Source/WebCore/bindings/js/JSDOMBinding.h:252 #11 0x00002b40c07b0894 in DumpRenderTreeSupportGtk::shadowRoot (context=0x2b4114012088, value=0x2b411442ad80) at ../../Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp:647 #12 0x0000000000427da3 in LayoutTestController::shadowRoot (this=0x2b40d08b4790, context=0x2b4114012088, element=0x2b411442ad80) at ../../Tools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:922 #13 0x0000000000414638 in shadowRootCallback (context=0x2b4114012088, function=0x2b411442af08, thisObject=0x2b411442a648, argumentCount=1, arguments=0x7fff448936b8, exception=0x7fff44893758) at ../../Tools/DumpRenderTree/LayoutTestController.cpp:1695 #14 0x00002b40c1613b60 in JSC::JSCallbackFunction::call (exec=0x2b4114012088) at ../../Source/JavaScriptCore/API/JSCallbackFunction.cpp:67 #15 0x00002b40c16bb2b8 in JSC::cti_op_call_NotJSFunction (args=0x7fff44893890) at ../../Source/JavaScriptCore/jit/JITStubs.cpp:2096 #16 0x00002b40c16b630f in JSC::JITThunks::tryCacheGetByID (callFrame=0x2b4114012038, codeBlock=0x7fff44893890, returnAddress=..., baseValue=..., propertyName=..., slot=..., stubInfo=0x2b40d00178f0) at ../../Source/JavaScriptCore/jit/JITStubs.cpp:871 #17 0x00002b40c16895fd in JSC::JITCode::execute (this=0x2b4114790d68, registerFile=0x2b40d001f668, callFrame=0x2b4114012038, globalData=0x2b40d00178f0) at ../../Source/JavaScriptCore/jit/JITCode.h:77 #18 0x00002b40c16860c6 in JSC::Interpreter::execute (this=0x2b40d001f650, program=0x2b4114790d50, callFrame=0x2b41144208d8, scopeChain=0x2b411442a300, thisObj=0x2b4114414150) at ../../Source/JavaScriptCore/interpreter/Interpreter.cpp:773 #19 0x00002b40c171df7a in JSC::evaluate (exec=0x2b41144208d8, scopeChain=0x2b411442a300, source=..., thisValue=...) at ../../Source/JavaScriptCore/runtime/Completion.cpp:64 #20 0x00002b40c091211f in WebCore::JSMainThreadExecState::evaluate (exec=0x2b41144208d8, chain=0x2b411442a300, source=..., thisValue=...) at ../../Source/WebCore/bindings/js/JSMainThreadExecState.h:54 #21 0x00002b40c093ef36 in WebCore::ScriptController::evaluateInWorld (this=0x1ba40e8, sourceCode=..., world=0x2b40d001f870) at ../../Source/WebCore/bindings/js/ScriptController.cpp:142 #22 0x00002b40c093f0f6 in WebCore::ScriptController::evaluate (this=0x1ba40e8, sourceCode=...) at ../../Source/WebCore/bindings/js/ScriptController.cpp:165 #23 0x00002b40c0b50729 in WebCore::ScriptElement::executeScript (this=0x224bdc0, sourceCode=...) at ../../Source/WebCore/dom/ScriptElement.cpp:268 #24 0x00002b40c0b503fa in WebCore::ScriptElement::prepareScript (this=0x224bdc0, scriptStartPosition=..., supportLegacyTypes=WebCore::ScriptElement::DisallowLegacyTypeInTypeAttribute) at ../../Source/WebCore/dom/ScriptElement.cpp:228 #25 0x00002b40c0cdbb3e in WebCore::HTMLScriptRunner::runScript (this=0x2b40d08c7440, script=0x224bd40, scriptStartPosition=...) at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:294 #26 0x00002b40c0cdb1c0 in WebCore::HTMLScriptRunner::execute (this=0x2b40d08c7440, scriptElement=..., scriptStartPosition=...) at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:175 #27 0x00002b40c0ccee69 in WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder (this=0x2b40d095acc0) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:206 #28 0x00002b40c0ccef25 in WebCore::HTMLDocumentParser::canTakeNextToken (this=0x2b40d095acc0, mode=WebCore::HTMLDocumentParser::AllowYield, session=...) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:224 #29 0x00002b40c0ccf2c7 in WebCore::HTMLDocumentParser::pumpTokenizer (this=0x2b40d095acc0, mode=WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:262 #30 0x00002b40c0ccecbe in WebCore::HTMLDocumentParser::pumpTokenizerIfPossible (this=0x2b40d095acc0, mode=WebCore::HTMLDocumentParser::AllowYield) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:176 #31 0x00002b40c0ccf70f in WebCore::HTMLDocumentParser::append (this=0x2b40d095acc0, source=...) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:358 #32 0x00002b40c0aa5db9 in WebCore::DecodedDataDocumentParser::appendBytes (this=0x2b40d095acc0, writer=0x2b40d094cd70, data=0x0, length=0, shouldFlush=true) at ../../Source/WebCore/dom/DecodedDataDocumentParser.cpp:54 #33 0x00002b40c0de844f in WebCore::DocumentWriter::addData (this=0x2b40d094cd70, str=0x0, len=0, flush=true) at ../../Source/WebCore/loader/DocumentWriter.cpp:201 #34 0x00002b40c0de8518 in WebCore::DocumentWriter::endIfNotLoadingMainResource (this=0x2b40d094cd70) at ../../Source/WebCore/loader/DocumentWriter.cpp:221 #35 0x00002b40c0de8485 in WebCore::DocumentWriter::end (this=0x2b40d094cd70) at ../../Source/WebCore/loader/DocumentWriter.cpp:207 #36 0x00002b40c0ddc657 in WebCore::DocumentLoader::finishedLoading (this=0x2b40d094cc70) at ../../Source/WebCore/loader/DocumentLoader.cpp:288 #37 0x00002b40c0df4d89 in WebCore::FrameLoader::finishedLoading (this=0x1ba3ca0) at ../../Source/WebCore/loader/FrameLoader.cpp:2230 #38 0x00002b40c0e26e36 in WebCore::MainResourceLoader::didFinishLoading (this=0x2b40d085bc90, finishTime=0) at ../../Source/WebCore/loader/MainResourceLoader.cpp:467 #39 0x00002b40c0e33019 in WebCore::ResourceLoader::didFinishLoading (this=0x2b40d085bc90, finishTime=0) at ../../Source/WebCore/loader/ResourceLoader.cpp:436 #40 0x00002b40c07837c8 in WebCore::readCallback (source=0x1bb7760, asyncResult=0x1b4a520, data=0x0) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:784 #41 0x00002b40c4843f65 in async_ready_callback_wrapper (source_object=0x1bb7760, res=0x1b4a520, user_data=0x0) at /tmp/buildd/glib2.0-2.27.91/./gio/ginputstream.c:470 #42 0x00002b40c4855628 in complete_in_idle_cb_for_thread (_data=<value optimized out>) at /tmp/buildd/glib2.0-2.27.91/./gio/gsimpleasyncresult.c:812 #43 0x00002b40c53bc362 in g_main_dispatch (context=0x1b26780) at /tmp/buildd/glib2.0-2.27.91/./glib/gmain.c:2440 #44 g_main_context_dispatch (context=0x1b26780) at /tmp/buildd/glib2.0-2.27.91/./glib/gmain.c:3013 #45 0x00002b40c53c0a28 in g_main_context_iterate (context=0x1b26780, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /tmp/buildd/glib2.0-2.27.91/./glib/gmain.c:3091 #46 0x00002b40c53c0f35 in g_main_loop_run (loop=0x2b40d098e240) at /tmp/buildd/glib2.0-2.27.91/./glib/gmain.c:3299 #47 0x00002b40c332f657 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 #48 0x000000000041ff30 in runTest (testPathOrURL=...) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:701 #49 0x000000000041f5cd in runTestingServerLoop () at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:493 #50 0x000000000042185b in main (argc=2, argv=0x7fff448951a8) at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:1179
Martin Robinson
Comment 7
2011-04-01 18:21:02 PDT
Here's the rollout:
https://bugs.webkit.org/show_bug.cgi?id=57687
Dominic Cooney
Comment 8
2011-04-01 19:09:08 PDT
Created
attachment 87956
[details]
Patch
Dominic Cooney
Comment 9
2011-04-02 10:29:01 PDT
Reopening this.
Martin Robinson
Comment 10
2011-04-02 11:46:43 PDT
Comment on
attachment 87956
[details]
Patch Thanks for fixing this!
WebKit Commit Bot
Comment 11
2011-04-02 13:56:32 PDT
Comment on
attachment 87956
[details]
Patch Clearing flags on attachment: 87956 Committed
r82774
: <
http://trac.webkit.org/changeset/82774
>
WebKit Commit Bot
Comment 12
2011-04-02 13:56:38 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug