<?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>58395</bug_id>
          
          <creation_ts>2011-04-12 16:42:54 -0700</creation_ts>
          <short_desc>Exceptions thrown from property getters called from Array prototype functions can be missed</short_desc>
          <delta_ts>2011-06-07 13:29:58 -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>PC</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="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>384504</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-04-12 16:42:54 -0700</bug_when>
    <thetext>This is caught by an ASSERT in the top of Interpreter::executeCall.

Check for exceptions after accessing properties that could be getters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>384507</commentid>
    <comment_count>1</comment_count>
      <attachid>89308</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-04-12 16:49:47 -0700</bug_when>
    <thetext>Created attachment 89308
The patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>384514</commentid>
    <comment_count>2</comment_count>
      <attachid>89308</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2011-04-12 17:00:43 -0700</bug_when>
    <thetext>Comment on attachment 89308
The patch

r=me assuming perf is good</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>384528</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2011-04-12 17:13:56 -0700</bug_when>
    <thetext>fixed in r83669</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89308</attachid>
            <date>2011-04-12 16:49:47 -0700</date>
            <delta_ts>2011-04-12 17:00:43 -0700</delta_ts>
            <desc>The patch</desc>
            <filename>58395.patch</filename>
            <type>text/plain</type>
            <size>6127</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gODM2NjMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAK
KzIwMTEtMDQtMTIgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODM5NQorICAgICAgICBFeGNlcHRpb25z
IHRocm93biBmcm9tIHByb3BlcnR5IGdldHRlcnMgY2FsbGVkIGZyb20gQXJyYXkgcHJvdG90eXBl
IGZ1bmN0aW9ucyBjYW4gYmUgbWlzc2VkCisKKyAgICAgICAgVGhpcyBpcyBjYXVnaHQgYnkgYW4g
QVNTRVJUIGluIHRoZSB0b3Agb2YgSW50ZXJwcmV0ZXI6OmV4ZWN1dGVDYWxsLgorICAgICAgICBD
aGVjayBmb3IgZXhjZXB0aW9ucyBhZnRlciBhY2Nlc3NpbmcgcHJvcGVydGllcyB0aGF0IGNvdWxk
IGJlIGdldHRlcnMuCisKKyAgICAgICAgKiBydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6YXJyYXlQcm90b0Z1bmNTb3J0KToKKyAgICAgICAgKEpTQzo6YXJyYXlQcm90
b0Z1bmNGaWx0ZXIpOgorICAgICAgICAoSlNDOjphcnJheVByb3RvRnVuY01hcCk6CisgICAgICAg
IChKU0M6OmFycmF5UHJvdG9GdW5jRXZlcnkpOgorICAgICAgICAoSlNDOjphcnJheVByb3RvRnVu
Y0ZvckVhY2gpOgorICAgICAgICAoSlNDOjphcnJheVByb3RvRnVuY1NvbWUpOgorICAgICAgICAo
SlNDOjphcnJheVByb3RvRnVuY1JlZHVjZSk6CisgICAgICAgIChKU0M6OmFycmF5UHJvdG9GdW5j
UmVkdWNlUmlnaHQpOgorICAgICAgICAgICAgLSBBZGQgZXhjZXB0aW9uIGNoZWNrcy4KKwogMjAx
MS0wNC0xMiAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlQcm90b3R5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAkocmV2aXNpb24gODM1MTEpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTUxNCwxMCArNTE0LDE0IEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlQ
cm90b0YKICAgICAvLyBvciBxdWlja3NvcnQsIGFuZCBtdWNoIGxlc3Mgc3dhcHBpbmcgdGhhbiBi
dWJibGVzb3J0L2luc2VydGlvbnNvcnQuCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGxl
bmd0aCAtIDE7ICsraSkgewogICAgICAgICBKU1ZhbHVlIGlPYmogPSB0aGlzT2JqLT5nZXQoZXhl
YywgaSk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CiAgICAgICAgIHVuc2lnbmVkIHRo
ZW1pbiA9IGk7CiAgICAgICAgIEpTVmFsdWUgbWluT2JqID0gaU9iajsKICAgICAgICAgZm9yICh1
bnNpZ25lZCBqID0gaSArIDE7IGogPCBsZW5ndGg7ICsraikgewogICAgICAgICAgICAgSlNWYWx1
ZSBqT2JqID0gdGhpc09iai0+Z2V0KGV4ZWMsIGopOworICAgICAgICAgICAgaWYgKGV4ZWMtPmhh
ZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNV
bmRlZmluZWQoKSk7CiAgICAgICAgICAgICBkb3VibGUgY29tcGFyZVJlc3VsdDsKICAgICAgICAg
ICAgIGlmIChqT2JqLmlzVW5kZWZpbmVkKCkpCiAgICAgICAgICAgICAgICAgY29tcGFyZVJlc3Vs
dCA9IDE7IC8vIGRvbid0IGNoZWNrIG1pbk9iaiBiZWNhdXNlIHRoZXJlJ3Mgbm8gbmVlZCB0byBk
aWZmZXJlbnRpYXRlID09ICgwKSBmcm9tID4gKDEpCkBAIC02ODIsMjAgKzY4NiwxOSBAQCBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFycmF5UHJvdG9GCiAgICAgfQogICAgIGZvciAoOyBr
IDwgbGVuZ3RoICYmICFleGVjLT5oYWRFeGNlcHRpb24oKTsgKytrKSB7CiAgICAgICAgIFByb3Bl
cnR5U2xvdCBzbG90KHRoaXNPYmopOwotCiAgICAgICAgIGlmICghdGhpc09iai0+Z2V0UHJvcGVy
dHlTbG90KGV4ZWMsIGssIHNsb3QpKQogICAgICAgICAgICAgY29udGludWU7Ci0KICAgICAgICAg
SlNWYWx1ZSB2ID0gc2xvdC5nZXRWYWx1ZShleGVjLCBrKTsKIAotICAgICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBlYWNoQXJndW1lbnRzOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9u
KCkpCisgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOwog
CisgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGVhY2hBcmd1bWVudHM7CiAgICAgICAgIGVh
Y2hBcmd1bWVudHMuYXBwZW5kKHYpOwogICAgICAgICBlYWNoQXJndW1lbnRzLmFwcGVuZChqc051
bWJlcihrKSk7CiAgICAgICAgIGVhY2hBcmd1bWVudHMuYXBwZW5kKHRoaXNPYmopOwogCiAgICAg
ICAgIEpTVmFsdWUgcmVzdWx0ID0gY2FsbChleGVjLCBmdW5jdGlvbiwgY2FsbFR5cGUsIGNhbGxE
YXRhLCBhcHBseVRoaXMsIGVhY2hBcmd1bWVudHMpOwotCiAgICAgICAgIGlmIChyZXN1bHQudG9C
b29sZWFuKGV4ZWMpKQogICAgICAgICAgICAgcmVzdWx0QXJyYXktPnB1dChleGVjLCBmaWx0ZXJJ
bmRleCsrLCB2KTsKICAgICB9CkBAIC03MzksMTUgKzc0MiwxOSBAQCBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGFycmF5UHJvdG9GCiAgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNP
YmopOwogICAgICAgICBpZiAoIXRoaXNPYmotPmdldFByb3BlcnR5U2xvdChleGVjLCBrLCBzbG90
KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotCiAgICAgICAgIEpTVmFsdWUgdiA9IHNsb3QuZ2V0
VmFsdWUoZXhlYywgayk7CiAKLSAgICAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgZWFjaEFyZ3Vt
ZW50czsKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKIAorICAgICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBlYWNoQXJndW1lbnRzOwogICAgICAgICBlYWNoQXJndW1lbnRzLmFwcGVuZCh2
KTsKICAgICAgICAgZWFjaEFyZ3VtZW50cy5hcHBlbmQoanNOdW1iZXIoaykpOwogICAgICAgICBl
YWNoQXJndW1lbnRzLmFwcGVuZCh0aGlzT2JqKTsKIAorICAgICAgICBpZiAoZXhlYy0+aGFkRXhj
ZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVk
KCkpOworCiAgICAgICAgIEpTVmFsdWUgcmVzdWx0ID0gY2FsbChleGVjLCBmdW5jdGlvbiwgY2Fs
bFR5cGUsIGNhbGxEYXRhLCBhcHBseVRoaXMsIGVhY2hBcmd1bWVudHMpOwogICAgICAgICByZXN1
bHRBcnJheS0+cHV0KGV4ZWMsIGssIHJlc3VsdCk7CiAgICAgfQpAQCAtNzk3LDE4ICs4MDQsMTgg
QEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBhcnJheVByb3RvRgogICAgIH0KICAgICBm
b3IgKDsgayA8IGxlbmd0aCAmJiAhZXhlYy0+aGFkRXhjZXB0aW9uKCk7ICsraykgewogICAgICAg
ICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqKTsKLQogICAgICAgICBpZiAoIXRoaXNPYmotPmdl
dFByb3BlcnR5U2xvdChleGVjLCBrLCBzbG90KSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAg
ICAgICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGVhY2hBcmd1bWVudHM7Ci0KICAgICAgICAgZWFj
aEFyZ3VtZW50cy5hcHBlbmQoc2xvdC5nZXRWYWx1ZShleGVjLCBrKSk7CiAgICAgICAgIGVhY2hB
cmd1bWVudHMuYXBwZW5kKGpzTnVtYmVyKGspKTsKICAgICAgICAgZWFjaEFyZ3VtZW50cy5hcHBl
bmQodGhpc09iaik7CiAKLSAgICAgICAgYm9vbCBwcmVkaWNhdGVSZXN1bHQgPSBjYWxsKGV4ZWMs
IGZ1bmN0aW9uLCBjYWxsVHlwZSwgY2FsbERhdGEsIGFwcGx5VGhpcywgZWFjaEFyZ3VtZW50cyku
dG9Cb29sZWFuKGV4ZWMpOworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOwogCisgICAgICAg
IGJvb2wgcHJlZGljYXRlUmVzdWx0ID0gY2FsbChleGVjLCBmdW5jdGlvbiwgY2FsbFR5cGUsIGNh
bGxEYXRhLCBhcHBseVRoaXMsIGVhY2hBcmd1bWVudHMpLnRvQm9vbGVhbihleGVjKTsKICAgICAg
ICAgaWYgKCFwcmVkaWNhdGVSZXN1bHQpIHsKICAgICAgICAgICAgIHJlc3VsdCA9IGpzQm9vbGVh
bihmYWxzZSk7CiAgICAgICAgICAgICBicmVhazsKQEAgLTg2MCw2ICs4NjcsOSBAQCBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFycmF5UHJvdG9GCiAgICAgICAgIGVhY2hBcmd1bWVudHMu
YXBwZW5kKGpzTnVtYmVyKGspKTsKICAgICAgICAgZWFjaEFyZ3VtZW50cy5hcHBlbmQodGhpc09i
aik7CiAKKyAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKKwogICAgICAgICBjYWxsKGV4ZWMs
IGZ1bmN0aW9uLCBjYWxsVHlwZSwgY2FsbERhdGEsIGFwcGx5VGhpcywgZWFjaEFyZ3VtZW50cyk7
CiAgICAgfQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CkBAIC05
MTAsOCArOTIwLDEwIEBAIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlQcm90b0YK
ICAgICAgICAgZWFjaEFyZ3VtZW50cy5hcHBlbmQoanNOdW1iZXIoaykpOwogICAgICAgICBlYWNo
QXJndW1lbnRzLmFwcGVuZCh0aGlzT2JqKTsKIAotICAgICAgICBib29sIHByZWRpY2F0ZVJlc3Vs
dCA9IGNhbGwoZXhlYywgZnVuY3Rpb24sIGNhbGxUeXBlLCBjYWxsRGF0YSwgYXBwbHlUaGlzLCBl
YWNoQXJndW1lbnRzKS50b0Jvb2xlYW4oZXhlYyk7CisgICAgICAgIGlmIChleGVjLT5oYWRFeGNl
cHRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQo
KSk7CiAKKyAgICAgICAgYm9vbCBwcmVkaWNhdGVSZXN1bHQgPSBjYWxsKGV4ZWMsIGZ1bmN0aW9u
LCBjYWxsVHlwZSwgY2FsbERhdGEsIGFwcGx5VGhpcywgZWFjaEFyZ3VtZW50cykudG9Cb29sZWFu
KGV4ZWMpOwogICAgICAgICBpZiAocHJlZGljYXRlUmVzdWx0KSB7CiAgICAgICAgICAgICByZXN1
bHQgPSBqc0Jvb2xlYW4odHJ1ZSk7CiAgICAgICAgICAgICBicmVhazsKQEAgLTk3OSw2ICs5OTEs
OCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFycmF5UHJvdG9GCiAKICAgICBmb3Ig
KDsgaSA8IGxlbmd0aCAmJiAhZXhlYy0+aGFkRXhjZXB0aW9uKCk7ICsraSkgewogICAgICAgICBK
U1ZhbHVlIHByb3AgPSBnZXRQcm9wZXJ0eShleGVjLCB0aGlzT2JqLCBpKTsKKyAgICAgICAgaWYg
KGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1VuZGVmaW5lZCgpKTsKICAgICAgICAgaWYgKCFwcm9wKQogICAgICAgICAgICAgY29udGlu
dWU7CiAgICAgICAgIApAQCAtMTA1MSw2ICsxMDY1LDggQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBhcnJheVByb3RvRgogICAgIGZvciAoOyBpIDwgbGVuZ3RoICYmICFleGVjLT5oYWRF
eGNlcHRpb24oKTsgKytpKSB7CiAgICAgICAgIHVuc2lnbmVkIGlkeCA9IGxlbmd0aCAtIGkgLSAx
OwogICAgICAgICBKU1ZhbHVlIHByb3AgPSBnZXRQcm9wZXJ0eShleGVjLCB0aGlzT2JqLCBpZHgp
OworICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOwogICAgICAgICBpZiAoIXByb3ApCiAgICAg
ICAgICAgICBjb250aW51ZTsKICAgICAgICAgCg==
</data>
<flag name="review"
          id="81967"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>