<?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>26373</bug_id>
          
          <creation_ts>2009-06-13 10:42:39 -0700</creation_ts>
          <short_desc>Add a ReadWriteLock class to wtf for single writer/multiple reader locks</short_desc>
          <delta_ts>2009-06-13 10:53:02 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</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="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>125638</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2009-06-13 10:42:39 -0700</bug_when>
    <thetext>This bug is covering adding a ReadWriteLock class (very similar to the already-existing Mutex class) to handle single writer/multiple reader locking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125639</commentid>
    <comment_count>1</comment_count>
      <attachid>31240</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2009-06-13 10:45:56 -0700</bug_when>
    <thetext>Created attachment 31240
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125642</commentid>
    <comment_count>2</comment_count>
      <attachid>31240</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2009-06-13 10:49:28 -0700</bug_when>
    <thetext>Comment on attachment 31240
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>125644</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2009-06-13 10:53:02 -0700</bug_when>
    <thetext>Fixed in r44651.
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31240</attachid>
            <date>2009-06-13 10:45:56 -0700</date>
            <delta_ts>2009-06-13 10:49:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4260</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDQ0NjUw
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMDktMDYt
MTIgIERhdmUgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI2MzczCisKKyAgICAgICAgQWRkIGEgbmV3IGNsYXNzIHRvIFRocmVhZGluZyBp
biB3dGYgY2FsbGVkIFJlYWRXcml0ZUxvY2sgdGhhdCBoYW5kbGVzIHNpbmdsZSB3cml0ZXIvbXVs
dGlwbGUgcmVhZGVyIGxvY2tpbmcuCisgICAgICAgIFByb3ZpZGUgYSBwdGhyZWFkcy1vbmx5IGlt
cGxlbWVudGF0aW9uIG9mIHRoZSBsb2NrIGZvciBub3csIGFzIHRoaXMgY2xhc3MgaXMgb25seSBn
b2luZyB0byBiZSB1c2VkCisgICAgICAgIG9uIFNub3cgTGVvcGFyZCBhdCBmaXJzdC4KKworICAg
ICAgICAqIHd0Zi9UaHJlYWRpbmcuaDoKKyAgICAgICAgKFdURjo6UmVhZFdyaXRlTG9jazo6aW1w
bCk6CisgICAgICAgICogd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoKKyAgICAgICAgKFdURjo6
UmVhZFdyaXRlTG9jazo6UmVhZFdyaXRlTG9jayk6CisgICAgICAgIChXVEY6OlJlYWRXcml0ZUxv
Y2s6On5SZWFkV3JpdGVMb2NrKToKKyAgICAgICAgKFdURjo6UmVhZFdyaXRlTG9jazo6cmVhZExv
Y2spOgorICAgICAgICAoV1RGOjpSZWFkV3JpdGVMb2NrOjp0cnlSZWFkTG9jayk6CisgICAgICAg
IChXVEY6OlJlYWRXcml0ZUxvY2s6OndyaXRlTG9jayk6CisgICAgICAgIChXVEY6OlJlYWRXcml0
ZUxvY2s6OnRyeVdyaXRlTG9jayk6CisgICAgICAgIChXVEY6OlJlYWRXcml0ZUxvY2s6OnVubG9j
ayk6CisKIDIwMDktMDYtMTIgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJlbi4KSW5kZXg6IHd0Zi9UaHJlYWRpbmcuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSB3dGYvVGhyZWFkaW5nLmgJKHJldmlzaW9uIDQ0NTcyKQorKysgd3RmL1RocmVh
ZGluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsMTggKzEyNiwyMiBAQCB2b2lkIGRldGFjaFRo
cmVhZChUaHJlYWRJZGVudGlmaWVyKTsKIAogI2lmIFVTRShQVEhSRUFEUykKIHR5cGVkZWYgcHRo
cmVhZF9tdXRleF90IFBsYXRmb3JtTXV0ZXg7Cit0eXBlZGVmIHB0aHJlYWRfcndsb2NrX3QgUGxh
dGZvcm1SZWFkV3JpdGVMb2NrOwogdHlwZWRlZiBwdGhyZWFkX2NvbmRfdCBQbGF0Zm9ybUNvbmRp
dGlvbjsKICNlbGlmIFBMQVRGT1JNKEdUSykKIHR5cGVkZWYgR093blB0cjxHTXV0ZXg+IFBsYXRm
b3JtTXV0ZXg7Cit0eXBlZGVmIHZvaWQqIFBsYXRmb3JtUmVhZFdyaXRlTG9jazsgLy8gRklYTUU6
IEltcGxlbWVudC4KIHR5cGVkZWYgR093blB0cjxHQ29uZD4gUGxhdGZvcm1Db25kaXRpb247CiAj
ZWxpZiBQTEFURk9STShRVCkKIHR5cGVkZWYgUVRfUFJFUEVORF9OQU1FU1BBQ0UoUU11dGV4KSog
UGxhdGZvcm1NdXRleDsKK3R5cGVkZWYgdm9pZCogUGxhdGZvcm1SZWFkV3JpdGVMb2NrOyAvLyBG
SVhNRTogSW1wbGVtZW50LgogdHlwZWRlZiBRVF9QUkVQRU5EX05BTUVTUEFDRShRV2FpdENvbmRp
dGlvbikqIFBsYXRmb3JtQ29uZGl0aW9uOwogI2VsaWYgUExBVEZPUk0oV0lOX09TKQogc3RydWN0
IFBsYXRmb3JtTXV0ZXggewogICAgIENSSVRJQ0FMX1NFQ1RJT04gbV9pbnRlcm5hbE11dGV4Owog
ICAgIHNpemVfdCBtX3JlY3Vyc2lvbkNvdW50OwogfTsKK3R5cGVkZWYgdm9pZCogUGxhdGZvcm1S
ZWFkV3JpdGVMb2NrOyAvLyBGSVhNRTogSW1wbGVtZW50Lgogc3RydWN0IFBsYXRmb3JtQ29uZGl0
aW9uIHsKICAgICBzaXplX3QgbV93YWl0ZXJzR29uZTsKICAgICBzaXplX3QgbV93YWl0ZXJzQmxv
Y2tlZDsKQEAgLTE1MSw2ICsxNTUsNyBAQCBzdHJ1Y3QgUGxhdGZvcm1Db25kaXRpb24gewogfTsK
ICNlbHNlCiB0eXBlZGVmIHZvaWQqIFBsYXRmb3JtTXV0ZXg7Cit0eXBlZGVmIHZvaWQqIFBsYXRm
b3JtUmVhZFdyaXRlTG9jazsKIHR5cGVkZWYgdm9pZCogUGxhdGZvcm1Db25kaXRpb247CiAjZW5k
aWYKICAgICAKQEAgLTE3MSw2ICsxNzYsMjcgQEAgcHJpdmF0ZToKIAogdHlwZWRlZiBMb2NrZXI8
TXV0ZXg+IE11dGV4TG9ja2VyOwogCitjbGFzcyBSZWFkV3JpdGVMb2NrIDogTm9uY29weWFibGUg
eworcHVibGljOgorICAgIFJlYWRXcml0ZUxvY2soKTsKKyAgICB+UmVhZFdyaXRlTG9jaygpOwor
CisgICAgdm9pZCByZWFkTG9jaygpOworICAgIGJvb2wgdHJ5UmVhZExvY2soKTsKKworICAgIHZv
aWQgd3JpdGVMb2NrKCk7CisgICAgYm9vbCB0cnlXcml0ZUxvY2soKTsKKyAgICAKKyAgICB2b2lk
IHVubG9jaygpOworCitwdWJsaWM6CisgICAgUGxhdGZvcm1SZWFkV3JpdGVMb2NrJiBpbXBsKCkg
eyByZXR1cm4gbV9yZWFkV3JpdGVMb2NrOyB9Citwcml2YXRlOgorICAgIFBsYXRmb3JtUmVhZFdy
aXRlTG9jayBtX3JlYWRXcml0ZUxvY2s7Cit9OworCit0eXBlZGVmIExvY2tlcjxSZWFkV3JpdGVM
b2NrPiBSZWFkV3JpdGVMb2NrZXI7CisKIGNsYXNzIFRocmVhZENvbmRpdGlvbiA6IE5vbmNvcHlh
YmxlIHsKIHB1YmxpYzoKICAgICBUaHJlYWRDb25kaXRpb24oKTsKSW5kZXg6IHd0Zi9UaHJlYWRp
bmdQdGhyZWFkcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAko
cmV2aXNpb24gNDQ1NzIpCisrKyB3dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNjcsNiArMjY3LDYxIEBAIHZvaWQgTXV0ZXg6OnVubG9jaygpCiAgICAgQVNTRVJU
X1VOVVNFRChyZXN1bHQsICFyZXN1bHQpOwogfQogCisKK1JlYWRXcml0ZUxvY2s6OlJlYWRXcml0
ZUxvY2soKQoreworICAgIHB0aHJlYWRfcndsb2NrX2luaXQoJm1fcmVhZFdyaXRlTG9jaywgTlVM
TCk7Cit9CisKK1JlYWRXcml0ZUxvY2s6On5SZWFkV3JpdGVMb2NrKCkKK3sKKyAgICBwdGhyZWFk
X3J3bG9ja19kZXN0cm95KCZtX3JlYWRXcml0ZUxvY2spOworfQorCit2b2lkIFJlYWRXcml0ZUxv
Y2s6OnJlYWRMb2NrKCkKK3sKKyAgICBpbnQgcmVzdWx0ID0gcHRocmVhZF9yd2xvY2tfcmRsb2Nr
KCZtX3JlYWRXcml0ZUxvY2spOworICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCAhcmVzdWx0KTsK
K30KKworYm9vbCBSZWFkV3JpdGVMb2NrOjp0cnlSZWFkTG9jaygpCit7CisgICAgaW50IHJlc3Vs
dCA9IHB0aHJlYWRfcndsb2NrX3RyeXJkbG9jaygmbV9yZWFkV3JpdGVMb2NrKTsKKworICAgIGlm
IChyZXN1bHQgPT0gMCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgaWYgKHJlc3VsdCA9PSBF
QlVTWSB8fCByZXN1bHQgPT0gRUFHQUlOKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgUmVhZFdy
aXRlTG9jazo6d3JpdGVMb2NrKCkKK3sKKyAgICBpbnQgcmVzdWx0ID0gcHRocmVhZF9yd2xvY2tf
d3Jsb2NrKCZtX3JlYWRXcml0ZUxvY2spOworICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCAhcmVz
dWx0KTsKK30KKworYm9vbCBSZWFkV3JpdGVMb2NrOjp0cnlXcml0ZUxvY2soKQoreworICAgIGlu
dCByZXN1bHQgPSBwdGhyZWFkX3J3bG9ja190cnl3cmxvY2soJm1fcmVhZFdyaXRlTG9jayk7CisK
KyAgICBpZiAocmVzdWx0ID09IDApCisgICAgICAgIHJldHVybiB0cnVlOworICAgIGlmIChyZXN1
bHQgPT0gRUJVU1kgfHwgcmVzdWx0ID09IEVBR0FJTikKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCit2b2lk
IFJlYWRXcml0ZUxvY2s6OnVubG9jaygpCit7CisgICAgaW50IHJlc3VsdCA9IHB0aHJlYWRfcnds
b2NrX3VubG9jaygmbV9yZWFkV3JpdGVMb2NrKTsKKyAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwg
IXJlc3VsdCk7Cit9CisKIFRocmVhZENvbmRpdGlvbjo6VGhyZWFkQ29uZGl0aW9uKCkKIHsgCiAg
ICAgcHRocmVhZF9jb25kX2luaXQoJm1fY29uZGl0aW9uLCBOVUxMKTsK
</data>
<flag name="review"
          id="15939"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>