<?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>127452</bug_id>
          
          <creation_ts>2014-01-22 16:06:14 -0800</creation_ts>
          <short_desc>[GStreamer] Lockup when playing Icecast radio</short_desc>
          <delta_ts>2014-01-27 08:53:02 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://dir.xiph.org/index.php</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="Nobody">webkit-unassigned</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gustavo</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>pnormand</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>970922</commentid>
    <comment_count>0</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-01-22 16:06:14 -0800</bug_when>
    <thetext>1. Go to this URL: http://dir.xiph.org/index.php
2. Click any of the play buttons on the page.

On my machine it locks up immediately. It could be my particular version of GStreamer or something though (currently using git master from a couple weeks ago). Does this work for anyone?

I&apos;ll try to get a backtrace tomorrow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971240</commentid>
    <comment_count>1</comment_count>
      <attachid>222005</attachid>
    <who name="Brendan Long">self</who>
    <bug_when>2014-01-23 11:08:28 -0800</bug_when>
    <thetext>Created attachment 222005
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971242</commentid>
    <comment_count>2</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-01-23 11:12:20 -0800</bug_when>
    <thetext>Looking at the backtrace, the problem was that in StreamingClient::handleResponseReceived(), we&apos;d lock the WebKitWebSrc, then notify on several properties. One of the other threads tried to access the WebKitWebSrc, and then we get a deadlock. I&apos;m pretty sure we&apos;re not supposed to notify while holding locks, so I just freeze the notifications while we&apos;re locked.

I&apos;m really not that familiar with GLib though, so I&apos;m not sure if this is the preferred way, or if we should do something different, like queuing up the notifications in a Vector&lt;const char*&gt;. This seems to be what freeze/thaw is meant for though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971243</commentid>
    <comment_count>3</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2014-01-23 11:14:21 -0800</bug_when>
    <thetext>Oh, and I&apos;d like to write a test for this, but it requires streaming media via Icecast (or something else which triggers a notify). I figured it was better to fix the bug than wait until I can figure out how (and find time to) write a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971579</commentid>
    <comment_count>4</comment_count>
      <attachid>222005</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2014-01-24 05:59:25 -0800</bug_when>
    <thetext>Comment on attachment 222005
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=222005&amp;action=review

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests, just fixing a lockup.

I think it would be best if you describe here what you commented on the bug about the test requiring streaming the media in a way that makes it emit notifications, which makes it complex to have right away.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971636</commentid>
    <comment_count>5</comment_count>
      <attachid>222116</attachid>
    <who name="Brendan Long">self</who>
    <bug_when>2014-01-24 10:01:43 -0800</bug_when>
    <thetext>Created attachment 222116
Patch

Like this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972309</commentid>
    <comment_count>6</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2014-01-26 20:03:39 -0800</bug_when>
    <thetext>Some of the http/tests/media tests use CGI scripts to mock media &quot;streaming&quot;. Have you looked at those?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972311</commentid>
    <comment_count>7</comment_count>
      <attachid>222116</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2014-01-26 20:06:31 -0800</bug_when>
    <thetext>Comment on attachment 222116
Patch

Looks good, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972427</commentid>
    <comment_count>8</comment_count>
      <attachid>222116</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-27 08:53:00 -0800</bug_when>
    <thetext>Comment on attachment 222116
Patch

Clearing flags on attachment: 222116

Committed r162842: &lt;http://trac.webkit.org/changeset/162842&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972428</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-27 08:53:02 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222005</attachid>
            <date>2014-01-23 11:08:28 -0800</date>
            <delta_ts>2014-01-24 10:01:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127452-20140123130827.patch</filename>
            <type>text/plain</type>
            <size>1967</size>
            <attacher name="Brendan Long">self</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNjA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWYxNDZmOWQ4ODk0MmUw
NjhhN2MzNzBkYjdmZDdhM2M1NTIwMjkzMC4uM2I0ODE4NzBjOThkYzhkNTZmNTAzN2FiZDg1ZmMy
MmYzYzhjNGM5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTAxLTIzICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBM
b2NrdXAgd2hlbiBwbGF5aW5nIEljZWNhc3QgcmFkaW8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzQ1MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywganVzdCBmaXhpbmcgYSBsb2Nr
dXAuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291
cmNlR1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKFN0cmVhbWluZ0NsaWVudDo6aGFuZGxlUmVzcG9u
c2VSZWNlaXZlZCk6IFdhaXQgdW50aWwgd2UgdW5sb2NrIHRvIHNlbmQgbm90aWZpY2F0aW9ucy4K
KwogMjAxNC0wMS0yMyAgTWloYWkgTWFlcmVhbiAgPG1tYWVyZWFuQGFkb2JlLmNvbT4KIAogICAg
ICAgICBbQ1NTIFJlZ2lvbnNdIEZpeCBwb3NpdGlvbmluZyBjb21wb3NpdGVkIGxheWVycyB3aGVu
IHRoZSByZWdpb24gaGFzIG92ZXJmbG93OmhpZGRlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2Vi
U291cmNlR1N0cmVhbWVyLmNwcAppbmRleCA1MjRkNDRkMzc0YWE0ODVlZDBjZTNhOTRkNjZiNWYw
MGFmODhiNDUzLi5iZGRmYmUzNjZmZGNhNTRlYWZhOTdiZmQ0OWE4NTI3NTRmMjZiMzFlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0
V2ViU291cmNlR1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcApAQCAtODc0LDYgKzg3
NCw5IEBAIHZvaWQgU3RyZWFtaW5nQ2xpZW50OjpoYW5kbGVSZXNwb25zZVJlY2VpdmVkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogICAgIHByaXYtPnNpemUgPSBsZW5ndGggPj0g
MCA/IGxlbmd0aCA6IDA7CiAgICAgcHJpdi0+c2Vla2FibGUgPSBsZW5ndGggPiAwICYmIGdfYXNj
aWlfc3RyY2FzZWNtcCgibm9uZSIsIHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZCgiQWNjZXB0LVJh
bmdlcyIpLnV0ZjgoKS5kYXRhKCkpOwogCisgICAgLy8gV2FpdCB1bnRpbCB3ZSB1bmxvY2sgdG8g
c2VuZCBub3RpZmljYXRpb25zCisgICAgZ19vYmplY3RfZnJlZXplX25vdGlmeShHX09CSkVDVChz
cmMpKTsKKwogICAgIEdzdFRhZ0xpc3QqIHRhZ3MgPSBnc3RfdGFnX2xpc3RfbmV3X2VtcHR5KCk7
CiAgICAgU3RyaW5nIHZhbHVlID0gcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKCJpY3ktbmFtZSIp
OwogICAgIGlmICghdmFsdWUuaXNFbXB0eSgpKSB7CkBAIC05MDUsNiArOTA4LDcgQEAgdm9pZCBT
dHJlYW1pbmdDbGllbnQ6OmhhbmRsZVJlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiAgICAgfQogCiAgICAgbG9ja2VyLnVubG9jaygpOworICAgIGdfb2Jq
ZWN0X3RoYXdfbm90aWZ5KEdfT0JKRUNUKHNyYykpOwogCiAgICAgLy8gbm90aWZ5IHNpemUvZHVy
YXRpb24KICAgICBpZiAobGVuZ3RoID4gMCkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222116</attachid>
            <date>2014-01-24 10:01:43 -0800</date>
            <delta_ts>2014-01-27 08:53:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127452-20140124120142.patch</filename>
            <type>text/plain</type>
            <size>2072</size>
            <attacher name="Brendan Long">self</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNjA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWYxNDZmOWQ4ODk0MmUw
NjhhN2MzNzBkYjdmZDdhM2M1NTIwMjkzMC4uZjQ2MGYwMTdjNDcwZjExOTU5NWY2NmFiNGE5YjE1
OWM0OTk4ZWI5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE0LTAxLTIzICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBM
b2NrdXAgd2hlbiBwbGF5aW5nIEljZWNhc3QgcmFkaW8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzQ1MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVGhpcyBidWcgY2FuIG9ubHkg
YmUgZGVtb25zdHJhdGVkIHdpdGggYW4gSWNlY2FzdCBzdHJlYW0sIGFuZCBpdCdzCisgICAgICAg
IG5vdCBjbGVhciBob3cgdG8gZG8gdGhhdCBpbiBvdXIgdGVzdGluZyBmcmFtZXdvcmsuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVh
bWVyLmNwcDoKKyAgICAgICAgKFN0cmVhbWluZ0NsaWVudDo6aGFuZGxlUmVzcG9uc2VSZWNlaXZl
ZCk6IFdhaXQgdW50aWwgd2UgdW5sb2NrIHRvIHNlbmQgbm90aWZpY2F0aW9ucy4KKwogMjAxNC0w
MS0yMyAgTWloYWkgTWFlcmVhbiAgPG1tYWVyZWFuQGFkb2JlLmNvbT4KIAogICAgICAgICBbQ1NT
IFJlZ2lvbnNdIEZpeCBwb3NpdGlvbmluZyBjb21wb3NpdGVkIGxheWVycyB3aGVuIHRoZSByZWdp
b24gaGFzIG92ZXJmbG93OmhpZGRlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0
cmVhbWVyLmNwcAppbmRleCA1MjRkNDRkMzc0YWE0ODVlZDBjZTNhOTRkNjZiNWYwMGFmODhiNDUz
Li5iZGRmYmUzNjZmZGNhNTRlYWZhOTdiZmQ0OWE4NTI3NTRmMjZiMzFlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNl
R1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNwcApAQCAtODc0LDYgKzg3NCw5IEBAIHZv
aWQgU3RyZWFtaW5nQ2xpZW50OjpoYW5kbGVSZXNwb25zZVJlY2VpdmVkKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlKQogICAgIHByaXYtPnNpemUgPSBsZW5ndGggPj0gMCA/IGxlbmd0
aCA6IDA7CiAgICAgcHJpdi0+c2Vla2FibGUgPSBsZW5ndGggPiAwICYmIGdfYXNjaWlfc3RyY2Fz
ZWNtcCgibm9uZSIsIHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZCgiQWNjZXB0LVJhbmdlcyIpLnV0
ZjgoKS5kYXRhKCkpOwogCisgICAgLy8gV2FpdCB1bnRpbCB3ZSB1bmxvY2sgdG8gc2VuZCBub3Rp
ZmljYXRpb25zCisgICAgZ19vYmplY3RfZnJlZXplX25vdGlmeShHX09CSkVDVChzcmMpKTsKKwog
ICAgIEdzdFRhZ0xpc3QqIHRhZ3MgPSBnc3RfdGFnX2xpc3RfbmV3X2VtcHR5KCk7CiAgICAgU3Ry
aW5nIHZhbHVlID0gcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKCJpY3ktbmFtZSIpOwogICAgIGlm
ICghdmFsdWUuaXNFbXB0eSgpKSB7CkBAIC05MDUsNiArOTA4LDcgQEAgdm9pZCBTdHJlYW1pbmdD
bGllbnQ6OmhhbmRsZVJlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCiAgICAgfQogCiAgICAgbG9ja2VyLnVubG9jaygpOworICAgIGdfb2JqZWN0X3RoYXdf
bm90aWZ5KEdfT0JKRUNUKHNyYykpOwogCiAgICAgLy8gbm90aWZ5IHNpemUvZHVyYXRpb24KICAg
ICBpZiAobGVuZ3RoID4gMCkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>