<?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>70290</bug_id>
          
          <creation_ts>2011-10-17 17:16:06 -0700</creation_ts>
          <short_desc>Exception ordering in String.prototype.replace</short_desc>
          <delta_ts>2011-10-17 17:35:43 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>485653</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-17 17:16:06 -0700</bug_when>
    <thetext>If pattern is not a regexp, it should be converted toString before the replacement value has it&apos;s toString conversion called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>485654</commentid>
    <comment_count>1</comment_count>
      <attachid>111353</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-17 17:17:57 -0700</bug_when>
    <thetext>Created attachment 111353
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>485666</commentid>
    <comment_count>2</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-10-17 17:35:43 -0700</bug_when>
    <thetext>Fixed in r97680</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111353</attachid>
            <date>2011-10-17 17:17:57 -0700</date>
            <delta_ts>2011-10-17 17:19:35 -0700</delta_ts>
            <desc>Fix</desc>
            <filename>70290.patch</filename>
            <type>text/plain</type>
            <size>4959</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTc2NzgpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTEtMTAtMTcgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgor
CisgICAgICAgIEV4Y2VwdGlvbiBvcmRlcmluZyBpbiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwMjkwCisK
KyAgICAgICAgSWYgcGF0dGVybiBpcyBub3QgYSByZWdleHAsIGl0IHNob3VsZCBiZSBjb252ZXJ0
ZWQgdG9TdHJpbmcgYmVmb3JlIHRoZSByZXBsYWNlbWVudCB2YWx1ZSBoYXMgaXQncyB0b1N0cmlu
ZyBjb252ZXJzaW9uIGNhbGxlZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpT
Qzo6c3RyaW5nUHJvdG9GdW5jUmVwbGFjZSk6CisKIDIwMTEtMTAtMTcgIEZpbGlwIFBpemxvICA8
ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAgICBERkcgYnl0ZWNvZGUgcGFyc2VyIHNob3VsZCB1
bmRlcnN0YW5kIGlubGluZSBzdGFja3MKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAkocmV2aXNpb24gOTc2NzMpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zNjAsMTMgKzM2MCwxMyBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIHN0
cmluZ1Byb3RvCiAgICAgSlNWYWx1ZSByZXBsYWNlbWVudCA9IGV4ZWMtPmFyZ3VtZW50KDEpOwog
ICAgIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSA9ICZleGVjLT5nbG9iYWxEYXRhKCk7CiAKLSAg
ICBVU3RyaW5nIHJlcGxhY2VtZW50U3RyaW5nOwotICAgIENhbGxEYXRhIGNhbGxEYXRhOwotICAg
IENhbGxUeXBlIGNhbGxUeXBlID0gZ2V0Q2FsbERhdGEocmVwbGFjZW1lbnQsIGNhbGxEYXRhKTsK
LSAgICBpZiAoY2FsbFR5cGUgPT0gQ2FsbFR5cGVOb25lKQotICAgICAgICByZXBsYWNlbWVudFN0
cmluZyA9IHJlcGxhY2VtZW50LnRvU3RyaW5nKGV4ZWMpOwotCiAgICAgaWYgKHBhdHRlcm4uaW5o
ZXJpdHMoJlJlZ0V4cE9iamVjdDo6c19pbmZvKSkgeworICAgICAgICBVU3RyaW5nIHJlcGxhY2Vt
ZW50U3RyaW5nOworICAgICAgICBDYWxsRGF0YSBjYWxsRGF0YTsKKyAgICAgICAgQ2FsbFR5cGUg
Y2FsbFR5cGUgPSBnZXRDYWxsRGF0YShyZXBsYWNlbWVudCwgY2FsbERhdGEpOworICAgICAgICBp
ZiAoY2FsbFR5cGUgPT0gQ2FsbFR5cGVOb25lKQorICAgICAgICAgICAgcmVwbGFjZW1lbnRTdHJp
bmcgPSByZXBsYWNlbWVudC50b1N0cmluZyhleGVjKTsKKwogICAgICAgICBjb25zdCBVU3RyaW5n
JiBzb3VyY2UgPSBzb3VyY2VWYWwtPnZhbHVlKGV4ZWMpOwogICAgICAgICB1bnNpZ25lZCBzb3Vy
Y2VMZW4gPSBzb3VyY2UubGVuZ3RoKCk7CiAgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24o
KSkKQEAgLTUzOCw3ICs1MzgsMTkgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBzdHJp
bmdQcm90bwogCiAgICAgLy8gTm90IGEgcmVndWxhciBleHByZXNzaW9uLCBzbyB0cmVhdCB0aGUg
cGF0dGVybiBhcyBhIHN0cmluZy4KIAorICAgIC8vICdwYXR0ZXJuU3RyaW5nJyAob3IgJ3NlYXJj
aFZhbHVlJywgYXMgaXQgaXMgcmVmZXJyZWQgdG8gaW4gdGhlIHNwZWMpIGlzIGNvbnZlcnRlZCBi
ZWZvcmUgdGhlIHJlcGxhY2VtZW50LgogICAgIFVTdHJpbmcgcGF0dGVyblN0cmluZyA9IHBhdHRl
cm4udG9TdHJpbmcoZXhlYyk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOworCisgICAgVVN0cmluZyBy
ZXBsYWNlbWVudFN0cmluZzsKKyAgICBDYWxsRGF0YSBjYWxsRGF0YTsKKyAgICBDYWxsVHlwZSBj
YWxsVHlwZSA9IGdldENhbGxEYXRhKHJlcGxhY2VtZW50LCBjYWxsRGF0YSk7CisgICAgaWYgKGNh
bGxUeXBlID09IENhbGxUeXBlTm9uZSkKKyAgICAgICAgcmVwbGFjZW1lbnRTdHJpbmcgPSByZXBs
YWNlbWVudC50b1N0cmluZyhleGVjKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CisKICAgICAvLyBT
cGVjaWFsIGNhc2UgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgcGF0dGVybnMgd2l0aG91dCBiYWNrIHJl
ZmVyZW5jZSByZXBsYWNlbWVudAogICAgIGlmIChwYXR0ZXJuU3RyaW5nLmxlbmd0aCgpID09IDEg
JiYgY2FsbFR5cGUgPT0gQ2FsbFR5cGVOb25lICYmIHJlcGxhY2VtZW50U3RyaW5nLmZpbmQoJyQn
LCAwKSA9PSBub3RGb3VuZCkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShzb3VyY2VW
YWwtPnJlcGxhY2VDaGFyYWN0ZXIoZXhlYywgcGF0dGVyblN0cmluZ1swXSwgcmVwbGFjZW1lbnRT
dHJpbmcpKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk3Njc4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMTAtMTcgIEdhdmluIEJh
cnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgorCisgICAgICAgIEV4Y2VwdGlvbiBv
cmRlcmluZyBpbiBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwMjkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzcHV0bmlrL0NvbmZvcm1hbmNlLzE1X05hdGl2
ZV9PYmplY3RzLzE1LjVfU3RyaW5nLzE1LjUuNC8xNS41LjQuMTFfU3RyaW5nLnByb3RvdHlwZS5y
ZXBsYWNlL1MxNS41LjQuMTFfQTFfVDExLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzcHV0bmlr
L0NvbmZvcm1hbmNlLzE1X05hdGl2ZV9PYmplY3RzLzE1LjVfU3RyaW5nLzE1LjUuNC8xNS41LjQu
MTFfU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlL1MxNS41LjQuMTFfQTFfVDEyLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgICAgIC0gQ2hlY2sgaW4gcGFzc2luZyByZXN1bHRzLgorCiAyMDExLTEwLTE3
ICBBbG9rIFByaXlhZGFyc2hpICA8YWxva3BAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFkZCBs
YXlvdXQgdGVzdHMgZm9yIFdlYlBsdWdpbiBjb21wb3NpdG9yIHBhdGgKSW5kZXg6IExheW91dFRl
c3RzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTVfTmF0aXZlX09iamVjdHMvMTUuNV9TdHJpbmcvMTUu
NS40LzE1LjUuNC4xMV9TdHJpbmcucHJvdG90eXBlLnJlcGxhY2UvUzE1LjUuNC4xMV9BMV9UMTEt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3NwdXRuaWsvQ29uZm9ybWFu
Y2UvMTVfTmF0aXZlX09iamVjdHMvMTUuNV9TdHJpbmcvMTUuNS40LzE1LjUuNC4xMV9TdHJpbmcu
cHJvdG90eXBlLnJlcGxhY2UvUzE1LjUuNC4xMV9BMV9UMTEtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA5NzY1NSkKKysrIExheW91dFRlc3RzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTVfTmF0aXZlX09i
amVjdHMvMTUuNV9TdHJpbmcvMTUuNS40LzE1LjUuNC4xMV9TdHJpbmcucHJvdG90eXBlLnJlcGxh
Y2UvUzE1LjUuNC4xMV9BMV9UMTEtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDYg
KzEsNiBAQAogUzE1LjUuNC4xMV9BMV9UMTEKIAotRkFJTCBTcHV0bmlrRXJyb3I6ICMxLjE6IEV4
Y2VwdGlvbiA9PT0gImluc2VhcmNoVmFsdWUiLiBBY3R1YWw6IGlucmVwbGFjZVZhbHVlCitQQVNT
IAogCiBURVNUIENPTVBMRVRFCiAKSW5kZXg6IExheW91dFRlc3RzL3NwdXRuaWsvQ29uZm9ybWFu
Y2UvMTVfTmF0aXZlX09iamVjdHMvMTUuNV9TdHJpbmcvMTUuNS40LzE1LjUuNC4xMV9TdHJpbmcu
cHJvdG90eXBlLnJlcGxhY2UvUzE1LjUuNC4xMV9BMV9UMTItZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTVfTmF0aXZlX09iamVjdHMv
MTUuNV9TdHJpbmcvMTUuNS40LzE1LjUuNC4xMV9TdHJpbmcucHJvdG90eXBlLnJlcGxhY2UvUzE1
LjUuNC4xMV9BMV9UMTItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA5NzY1NSkKKysrIExheW91dFRl
c3RzL3NwdXRuaWsvQ29uZm9ybWFuY2UvMTVfTmF0aXZlX09iamVjdHMvMTUuNV9TdHJpbmcvMTUu
NS40LzE1LjUuNC4xMV9TdHJpbmcucHJvdG90eXBlLnJlcGxhY2UvUzE1LjUuNC4xMV9BMV9UMTIt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsNiBAQAogUzE1LjUuNC4xMV9B
MV9UMTIKIAotRkFJTCBTcHV0bmlrRXJyb3I6ICMxLjE6IEV4Y2VwdGlvbiA9PT0gImluc2VhcmNo
VmFsdWUiLiBBY3R1YWw6IGlucmVwbGFjZVZhbHVlCitQQVNTIAogCiBURVNUIENPTVBMRVRFCiAK
</data>
<flag name="review"
          id="109162"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>