<?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>61203</bug_id>
          
          <creation_ts>2011-05-20 11:27:03 -0700</creation_ts>
          <short_desc>Horrendous bug in callOnMainThreadAndWait</short_desc>
          <delta_ts>2011-06-18 11:55:25 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>ademar</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>407224</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2011-05-20 11:27:03 -0700</bug_when>
    <thetext>Horrendous bug in callOnMainThreadAndWait

When the main thread is done with the invocation and decides to signal the waiting thread, it doesn&apos;t reacquire the mutex first.  Ouch!

In radar as &lt;rdar://problem/9472883&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>407226</commentid>
    <comment_count>1</comment_count>
      <attachid>94247</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2011-05-20 11:30:14 -0700</bug_when>
    <thetext>Created attachment 94247
Patch v1 - Acquire the mutex before signaling</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>407242</commentid>
    <comment_count>2</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2011-05-20 11:46:28 -0700</bug_when>
    <thetext>Landed in r86972</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>407970</commentid>
    <comment_count>3</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-05-23 07:47:31 -0700</bug_when>
    <thetext>Revision r86972 cherry-picked into qtwebkit-2.2 with commit 1aba524 &lt;http://gitorious.org/webkit/qtwebkit/commit/1aba524&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94247</attachid>
            <date>2011-05-20 11:30:14 -0700</date>
            <delta_ts>2011-05-20 11:42:54 -0700</delta_ts>
            <desc>Patch v1 - Acquire the mutex before signaling</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>1492</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODY5NjkpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMTEtMDUtMjAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS85
NDcyODgzPiBhbmQgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxMjAz
CisgICAgICAgIEhvcnJlbmRvdXMgYnVnIGluIGNhbGxPbk1haW5UaHJlYWRBbmRXYWl0CisKKyAg
ICAgICAgKiB3dGYvTWFpblRocmVhZC5jcHA6CisgICAgICAgIChXVEY6OmRpc3BhdGNoRnVuY3Rp
b25zRnJvbU1haW5UaHJlYWQpOiBCZWZvcmUgc2lnbmFsaW5nIHRoZSBiYWNrZ3JvdW5kIHRocmVh
ZCB3aXRoIHRoZQorICAgICAgICAgIHN5bmNGbGFnIGNvbmRpdGlvbiwgcmVhY3F1aXJlIHRoZSBt
dXRleCBmaXJzdC4KKwogMjAxMS0wNS0yMCAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvd3RmL01haW5UaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93dGYvTWFpblRocmVhZC5jcHAJKHJldmlzaW9uIDg2OTU1KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL3d0Zi9NYWluVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTUzLDgg
KzE1MywxMCBAQCB2b2lkIGRpc3BhdGNoRnVuY3Rpb25zRnJvbU1haW5UaHJlYWQoKQogICAgICAg
ICB9CiAKICAgICAgICAgaW52b2NhdGlvbi5mdW5jdGlvbihpbnZvY2F0aW9uLmNvbnRleHQpOwot
ICAgICAgICBpZiAoaW52b2NhdGlvbi5zeW5jRmxhZykKKyAgICAgICAgaWYgKGludm9jYXRpb24u
c3luY0ZsYWcpIHsKKyAgICAgICAgICAgIE11dGV4TG9ja2VyIGxvY2tlcihtYWluVGhyZWFkRnVu
Y3Rpb25RdWV1ZU11dGV4KCkpOwogICAgICAgICAgICAgaW52b2NhdGlvbi5zeW5jRmxhZy0+c2ln
bmFsKCk7CisgICAgICAgIH0KIAogICAgICAgICAvLyBJZiB3ZSBhcmUgcnVubmluZyBhY2N1bXVs
YXRlZCBmdW5jdGlvbnMgZm9yIHRvbyBsb25nIHNvIFVJIG1heSBiZWNvbWUgdW5yZXNwb25zaXZl
LCB3ZSBuZWVkIHRvCiAgICAgICAgIC8vIHlpZWxkIHNvIHRoZSB1c2VyIGlucHV0IGNhbiBiZSBw
cm9jZXNzZWQuIE90aGVyd2lzZSB1c2VyIG1heSBub3QgYmUgYWJsZSB0byBldmVuIGNsb3NlIHRo
ZSB3aW5kb3cuCg==
</data>
<flag name="review"
          id="87531"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>