<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>129764</bug_id>
          
          <creation_ts>2014-03-05 16:25:13 -0800</creation_ts>
          <short_desc>[Gtk] Assertion failure in DumpRenderTree when MEDIA_STREAM is enabled</short_desc>
          <delta_ts>2014-03-12 13:25:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brendan Long">b.long</reporter>
          <assigned_to name="Brendan Long">b.long</assigned_to>
          <cc>dbates</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>987434</commentid>
    <comment_count>0</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-03-05 16:25:13 -0800</bug_when>
    <thetext>Assertion failure in DumpRenderTree when MEDIA_STREAM is enabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987435</commentid>
    <comment_count>1</comment_count>
      <attachid>225925</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-03-05 16:28:46 -0800</bug_when>
    <thetext>Created attachment 225925
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987439</commentid>
    <comment_count>2</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-03-05 16:29:44 -0800</bug_when>
    <thetext>Without this crash, DumpRenderTree does this ever time I run it:

#0  0x00007ffff78374c3 in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:333
#1  0x00007ffff27a92d3 in WebCore::Supplementable&lt;WebCore::Page&gt;::provideSupplement (this=0x819800, 
    key=0x7ffff51e7937 &quot;UserMediaController&quot;, supplement=...)
    at ../../Source/WebCore/platform/Supplementable.h:104
#2  0x00007ffff27a8f8b in WebCore::Supplement&lt;WebCore::Page&gt;::provideTo (host=0x819800, 
    key=0x7ffff51e7937 &quot;UserMediaController&quot;, supplement=...)
    at ../../Source/WebCore/platform/Supplementable.h:89
#3  0x00007ffff375ccf4 in WebCore::provideUserMediaTo (page=0x819800, client=0xddc420)
    at ../../Source/WebCore/Modules/mediastream/UserMediaController.cpp:54
#4  0x0000000000522f47 in WebCore::Internals::Internals (this=0xddbe10, document=0xd937a0)
    at ../../Source/WebCore/testing/Internals.cpp:311
#5  0x0000000000522b39 in WebCore::Internals::create (document=0xd937a0)
    at ../../Source/WebCore/testing/Internals.cpp:257
#6  0x00000000004e21f8 in WebCoreTestSupport::injectInternalsObject (context=0x7fffe803f9b0)
    at ../../Source/WebCore/testing/js/WebCoreTestSupport.cpp:49
#7  0x00000000004d6b15 in webViewWindowObjectCleared (view=0x81a3a0, frame=0x761fa0, 
    context=0x7fffe803f9b0, windowObject=0x7fffe803f970, data=0x0)
    at ../../Tools/DumpRenderTree/gtk/DumpRenderTree.cpp:926
#8  0x00007ffff2313ac7 in webkit_marshal_VOID__OBJECT_POINTER_POINTER (closure=0x8a6340, 
    return_value=0x0, n_param_values=4, param_values=0x7fffffffafb0, invocation_hint=0x7fffffffaf50, 
    marshal_data=0x0) at DerivedSources/webkit/webkitmarshal.cpp:1163
#9  0x0000003b3ca10298 in g_closure_invoke (closure=0x8a6340, return_value=return_value@entry=0x0, 
    n_param_values=4, param_values=param_values@entry=0x7fffffffafb0, 
    invocation_hint=invocation_hint@entry=0x7fffffffaf50) at gclosure.c:777
#10 0x0000003b3ca2235d in signal_emit_unlocked_R (node=node@entry=0x607030, detail=detail@entry=0, 
    instance=instance@entry=0x81a3a0, emission_return=emission_return@entry=0x0, 
    instance_and_params=instance_and_params@entry=0x7fffffffafb0) at gsignal.c:3586
#11 0x0000003b3ca2a0f2 in g_signal_emit_valist (instance=instance@entry=0x81a3a0, 
    signal_id=signal_id@entry=172, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffb1e8)
    at gsignal.c:3330
#12 0x0000003b3ca2a8f8 in g_signal_emit_by_name (instance=0x81a3a0, 
    detailed_signal=0x7ffff3ca4f50 &quot;window-object-cleared&quot;) at gsignal.c:3426
#13 0x00007ffff22c78d5 in WebKit::FrameLoaderClient::dispatchDidClearWindowObjectInWorld (
    this=0x788d20, world=...) at ../../Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp:610
#14 0x00007ffff2ca57e9 in WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld (this=0x7f6c98, 
    world=...) at ../../Source/WebCore/loader/FrameLoader.cpp:3295
#15 0x00007ffff259a4a2 in WebCore::ScriptController::initScript (this=0x7f6f50, world=...)
    at ../../Source/WebCore/bindings/js/ScriptController.cpp:230
#16 0x00007ffff22cc089 in WebCore::ScriptController::windowShell (this=0x7f6f50, world=...)
    at ../../Source/WebCore/bindings/js/ScriptController.h:86
#17 0x00007ffff2599e48 in WebCore::ScriptController::evaluateInWorld (this=0x7f6f50, sourceCode=..., 
    world=...) at ../../Source/WebCore/bindings/js/ScriptController.cpp:136
#18 0x00007ffff259a01c in WebCore::ScriptController::evaluate (this=0x7f6f50, sourceCode=...)
    at ../../Source/WebCore/bindings/js/ScriptController.cpp:163
#19 0x00007ffff2880659 in WebCore::ScriptElement::executeScript (this=0x64de08, sourceCode=...)
    at ../../Source/WebCore/dom/ScriptElement.cpp:307
#20 0x00007ffff2ab7ba0 in WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent (
    this=0x871400, pendingScript=...) at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:144
#21 0x00007ffff2ab79ee in WebCore::HTMLScriptRunner::executeParsingBlockingScript (this=0x871400)
    at ../../Source/WebCore/html/parser/HTMLScriptRunner.cpp:120
#22 0x00007ffff2ab7ecc in WebCore::HTMLScriptRunner::executeParsingBlockingScripts (this=0x871400)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987541</commentid>
    <comment_count>3</comment_count>
      <attachid>225925</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2014-03-05 20:56:07 -0800</bug_when>
    <thetext>Comment on attachment 225925
Patch

What do other ports do?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987545</commentid>
    <comment_count>4</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-03-05 21:07:39 -0800</bug_when>
    <thetext>The only other port that calls WebCore::provideUserMediaTo() is Mac (WebView.mm, line 937), and I&apos;m not sure why the assertion doesn&apos;t fail there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989805</commentid>
    <comment_count>5</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-03-12 13:19:50 -0700</bug_when>
    <thetext>I don&apos;t know what changed, but this isn&apos;t crashing anymore.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225925</attachid>
            <date>2014-03-05 16:28:46 -0800</date>
            <delta_ts>2014-03-12 13:25:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129764-20140305182845.patch</filename>
            <type>text/plain</type>
            <size>1922</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY1MTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjA4MzRiN2Q5MjA0MTJj
NjkwMGU0MzBkYWI1ZTM3OWIzYTlhYjU3My4uZGQxMzU0NGVkMTRkM2ZiZDlmOWYzZWY1NmVhZWU5
ODA4ZjhlZWIxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTAzLTA1ICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR3RrXSBBc3NlcnRp
b24gZmFpbHVyZSBpbiBEdW1wUmVuZGVyVHJlZSB3aGVuIE1FRElBX1NUUkVBTSBpcyBlbmFibGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk3NjQK
KworICAgICAgICB3ZWJraXRfd2ViX3ZpZXdfaW5pdCBjYWxscyBXZWJDb3JlOjpwcm92aWRlVXNl
ck1lZGlhVG8oKSwgdGhlbiBJbnRlcm5hbHMnIGNvbnN0cnVjdG9yCisgICAgICAgIGRvZXMgdGhl
IHNhbWUsIHdoaWNoIGNhdXNlcyBBU1NFUlQoIW1fc3VwcGxlbWVudHMuZ2V0KGtleSkpOyB0byBm
YWlsLiBUaGUgZml4IGlzIHRvCisgICAgICAgIGp1c3QgcmVtb3ZlIHRoZSBleGlzdGluZyBzdXBw
bGVtZW50IGJlZm9yZSBhZGRpbmcgYSBuZXcgb25lLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgc2luY2UgaWYgRHVtcFJlbmRl
clRyZWUgd29ya3MgYXQgYWxsLCB0aGVuIHRoaXMgcHJvYmxlbSBpcyBmaXhlZC4KKworICAgICAg
ICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6
SW50ZXJuYWxzKTogUmVtb3ZlIGV4aXN0aW5nIFVzZXJNZWRpYUNvbnRyb2xsZXIgc3VwcGxlbWVu
dCBiZWZvcmUgYWRkaW5nIHRoZSBtb2NrIG9uZS4KKwogMjAxNC0wMy0wNSAgT2xpdmVyIEh1bnQg
IDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFN1cHBvcnQgY2FjaGluZyBvZiBjdXN0b20g
c2V0dGVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3Bw
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDYwODQ2YjYyYzJk
NTU0MDYxNzFkMTZlZWMyZWU4YTNlZWZjZjEyOTAuLmQ5OTAzYmZkZTBiZTIzOTUxNDhmMDhjMTg2
MjUwZTg4MzMzNTU1MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTE1
NCw2ICsxNTQsNyBAQAogI2luY2x1ZGUgIlJUQ1BlZXJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAi
UlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyTW9jay5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNsaWVu
dE1vY2suaCIKKyNpbmNsdWRlICJVc2VyTWVkaWFDb250cm9sbGVyLmgiCiAjZW5kaWYKIAogI2lm
IEVOQUJMRShNRURJQV9TT1VSQ0UpCkBAIC0zMDgsNiArMzA5LDcgQEAgSW50ZXJuYWxzOjpJbnRl
cm5hbHMoRG9jdW1lbnQqIGRvY3VtZW50KQogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAg
TW9ja01lZGlhU3RyZWFtQ2VudGVyOjpyZWdpc3Rlck1vY2tNZWRpYVN0cmVhbUNlbnRlcigpOwog
ICAgIGVuYWJsZU1vY2tSVENQZWVyQ29ubmVjdGlvbkhhbmRsZXIoKTsKKyAgICBkb2N1bWVudC0+
cGFnZSgpLT5yZW1vdmVTdXBwbGVtZW50KFVzZXJNZWRpYUNvbnRyb2xsZXI6OnN1cHBsZW1lbnRO
YW1lKCkpOwogICAgIFdlYkNvcmU6OnByb3ZpZGVVc2VyTWVkaWFUbyhkb2N1bWVudC0+cGFnZSgp
LCBuZXcgVXNlck1lZGlhQ2xpZW50TW9jaygpKTsKICNlbmRpZgogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>