<?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>41176</bug_id>
          
          <creation_ts>2010-06-24 14:22:02 -0700</creation_ts>
          <short_desc>Fix testapi.c to account for movable objects</short_desc>
          <delta_ts>2010-06-25 23:26:03 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nathan Lawrence">nlawrence</reporter>
          <assigned_to name="Nathan Lawrence">nlawrence</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>nlawrence</cc>
    
    <cc>oliver</cc>
    
    <cc>slewis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>242662</commentid>
    <comment_count>0</comment_count>
      <attachid>59701</attachid>
    <who name="Nathan Lawrence">nlawrence</who>
    <bug_when>2010-06-24 14:22:02 -0700</bug_when>
    <thetext>Created attachment 59701
Patch

We assume in testapi.c that the value aHeapRef refers to will not be moved.  When we have movable objects, this will not be the case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242701</commentid>
    <comment_count>1</comment_count>
      <attachid>59701</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-06-24 15:53:29 -0700</bug_when>
    <thetext>Comment on attachment 59701
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242864</commentid>
    <comment_count>2</comment_count>
      <attachid>59701</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-06-24 23:45:49 -0700</bug_when>
    <thetext>Comment on attachment 59701
Patch

aStackRef should be cleared immediately after JSObjectSetPrivateProperty as the private storage should then keep the heap reference live.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242865</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-06-24 23:48:06 -0700</bug_when>
    <thetext>Basically because aHeapRef needs to be pinned somehow -- realistically we&apos;ll need some kind of layer for API objects to GC allocate handles i guess :-/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243104</commentid>
    <comment_count>4</comment_count>
      <attachid>59784</attachid>
    <who name="Nathan Lawrence">nlawrence</who>
    <bug_when>2010-06-25 11:45:12 -0700</bug_when>
    <thetext>Created attachment 59784
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243107</commentid>
    <comment_count>5</comment_count>
    <who name="Nathan Lawrence">nlawrence</who>
    <bug_when>2010-06-25 11:46:09 -0700</bug_when>
    <thetext>Updated per Oliver&apos;s comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243112</commentid>
    <comment_count>6</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-06-25 11:54:13 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Basically because aHeapRef needs to be pinned somehow -- realistically we&apos;ll need some kind of layer for API objects to GC allocate handles i guess :-/

The current plan is just not to move objects pointed to by the stack.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243260</commentid>
    <comment_count>7</comment_count>
      <attachid>59784</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-06-25 16:54:26 -0700</bug_when>
    <thetext>Comment on attachment 59784
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243337</commentid>
    <comment_count>8</comment_count>
      <attachid>59784</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-25 23:25:58 -0700</bug_when>
    <thetext>Comment on attachment 59784
Patch

Clearing flags on attachment: 59784

Committed r61946: &lt;http://trac.webkit.org/changeset/61946&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243338</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-25 23:26:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59701</attachid>
            <date>2010-06-24 14:22:02 -0700</date>
            <delta_ts>2010-06-25 11:45:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>aHeapRef.patch</filename>
            <type>text/plain</type>
            <size>2007</size>
            <attacher name="Nathan Lawrence">nlawrence</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDYxNzgzKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDYtMjQgIE5hdGhhbiBM
YXdyZW5jZSAgPG5sYXdyZW5jZUBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgV2UgYXNzdW1lIGluIHRlc3RhcGkuYyB0aGF0IHRoZSB2
YWx1ZSBhSGVhcFJlZiByZWZlcnMgdG8gd2lsbCBub3QgYmUKKyAgICAgICAgbW92ZWQuICBXaGVu
IHdlIGhhdmUgbW92YWJsZSBvYmplY3RzLCB0aGlzIHdpbGwgbm90IGJlIHRoZSBjYXNlLgorCisg
ICAgICAgICogQVBJL3Rlc3RzL3Rlc3RhcGkuYzoKKyAgICAgICAgKG1haW4pOgorCiAgMjAxMC0w
Ni0yMSAgTmF0aGFuIExhd3JlbmNlICA8bmxhd3JlbmNlQGFwcGxlLmNvbT4KIAogICAgICAgICAg
UmV2aWV3ZWQgYnkgR2VvZmYgR2FyZW4uCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMv
dGVzdGFwaS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy90ZXN0YXBp
LmMJKHJldmlzaW9uIDYxNzgxKQorKysgSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGku
Ywkod29ya2luZyBjb3B5KQpAQCAtOTI3LDcgKzkyNyw4IEBAIGludCBtYWluKGludCBhcmdjLCBj
aGFyKiBhcmd2W10pCiAgICAgSlNTdHJpbmdSZWxlYXNlKEVtcHR5T2JqZWN0SVN0cmluZyk7CiAg
ICAgCiAgICAgSlNTdHJpbmdSZWYgbGVuZ3RoU3RyID0gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENT
dHJpbmcoImxlbmd0aCIpOwotICAgIGFIZWFwUmVmID0gSlNPYmplY3RNYWtlQXJyYXkoY29udGV4
dCwgMCwgMCwgMCk7CisgICAgSlNPYmplY3RSZWYgYVN0YWNrUmVmID0gSlNPYmplY3RNYWtlQXJy
YXkoY29udGV4dCwgMCwgMCwgMCk7CisgICAgYUhlYXBSZWYgPSBhU3RhY2tSZWY7CiAgICAgSlNP
YmplY3RTZXRQcm9wZXJ0eShjb250ZXh0LCBhSGVhcFJlZiwgbGVuZ3RoU3RyLCBKU1ZhbHVlTWFr
ZU51bWJlcihjb250ZXh0LCAxMCksIDAsIDApOwogICAgIEpTU3RyaW5nUmVmIHByaXZhdGVQcm9w
ZXJ0eU5hbWUgPSBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygicHJpdmF0ZVByb3BlcnR5
Iik7CiAgICAgaWYgKCFKU09iamVjdFNldFByaXZhdGVQcm9wZXJ0eShjb250ZXh0LCBteU9iamVj
dCwgcHJpdmF0ZVByb3BlcnR5TmFtZSwgYUhlYXBSZWYpKSB7CkBAIC05NTksMTEgKzk2MCwxNCBA
QCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciogYXJndltdKQogICAgIH0gZWxzZQogICAgICAgICBw
cmludGYoIlBBU1M6IENhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBwcm9wZXJ0eSB0aHJvdWdoIG9yZGlu
YXJ5IHByb3BlcnR5IGxvb2t1cC5cbiIpOwogICAgIAorICAgIGFTdGFja1JlZiA9IDA7CisKICAg
ICBKU0dhcmJhZ2VDb2xsZWN0KGNvbnRleHQpOwogICAgIAogICAgIGZvciAoaW50IGkgPSAwOyBp
IDwgMTAwMDA7IGkrKykKICAgICAgICAgSlNPYmplY3RNYWtlKGNvbnRleHQsIDAsIDApOwogCisg
ICAgYUhlYXBSZWYgPSBKU1ZhbHVlVG9PYmplY3QoY29udGV4dCwgSlNPYmplY3RHZXRQcml2YXRl
UHJvcGVydHkoY29udGV4dCwgbXlPYmplY3QsIHByaXZhdGVQcm9wZXJ0eU5hbWUpLCAwKTsKICAg
ICBpZiAoSlNWYWx1ZVRvTnVtYmVyKGNvbnRleHQsIEpTT2JqZWN0R2V0UHJvcGVydHkoY29udGV4
dCwgYUhlYXBSZWYsIGxlbmd0aFN0ciwgMCksIDApICE9IDEwKSB7CiAgICAgICAgIHByaW50Zigi
RkFJTDogUHJpdmF0ZSBwcm9wZXJ0eSBoYXMgYmVlbiBjb2xsZWN0ZWQuXG4iKTsKICAgICAgICAg
ZmFpbGVkID0gMTsK
</data>
<flag name="review"
          id="46708"
          type_id="1"
          status="+"
          setter="ggaren"
    />
    <flag name="commit-queue"
          id="46718"
          type_id="3"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59784</attachid>
            <date>2010-06-25 11:45:12 -0700</date>
            <delta_ts>2010-06-25 23:25:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>aHeapRef.patch</filename>
            <type>text/plain</type>
            <size>2190</size>
            <attacher name="Nathan Lawrence">nlawrence</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDYxODc2KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDYtMjUgIE5hdGhhbiBM
YXdyZW5jZSAgPG5sYXdyZW5jZUBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgV2UgYXNzdW1lIGluIHRlc3RhcGkuYyB0aGF0IHRoZSB2
YWx1ZSBhSGVhcFJlZiByZWZlcnMgdG8gd2lsbCBub3QgYmUKKyAgICAgICAgbW92ZWQuICBXaGVu
IHdlIGhhdmUgbW92YWJsZSBvYmplY3RzLCB0aGlzIHdpbGwgbm90IGJlIHRoZSBjYXNlLgorCisg
ICAgICAgICogQVBJL3Rlc3RzL3Rlc3RhcGkuYzoKKyAgICAgICAgKG1haW4pOgorCiAyMDEwLTA2
LTI1ICBKZWRyemVqIE5vd2Fja2kgIDxqZWRyemVqLm5vd2Fja2lAbm9raWEuY29tPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgpJbmRleDogSmF2YVNjcmlwdENvcmUvQVBJ
L3Rlc3RzL3Rlc3RhcGkuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMv
dGVzdGFwaS5jCShyZXZpc2lvbiA2MTg3NikKKysrIEphdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy90
ZXN0YXBpLmMJKHdvcmtpbmcgY29weSkKQEAgLTkyNyw3ICs5MjcsOCBAQCBpbnQgbWFpbihpbnQg
YXJnYywgY2hhciogYXJndltdKQogICAgIEpTU3RyaW5nUmVsZWFzZShFbXB0eU9iamVjdElTdHJp
bmcpOwogICAgIAogICAgIEpTU3RyaW5nUmVmIGxlbmd0aFN0ciA9IEpTU3RyaW5nQ3JlYXRlV2l0
aFVURjhDU3RyaW5nKCJsZW5ndGgiKTsKLSAgICBhSGVhcFJlZiA9IEpTT2JqZWN0TWFrZUFycmF5
KGNvbnRleHQsIDAsIDAsIDApOworICAgIEpTT2JqZWN0UmVmIGFTdGFja1JlZiA9IEpTT2JqZWN0
TWFrZUFycmF5KGNvbnRleHQsIDAsIDAsIDApOworICAgIGFIZWFwUmVmID0gYVN0YWNrUmVmOwog
ICAgIEpTT2JqZWN0U2V0UHJvcGVydHkoY29udGV4dCwgYUhlYXBSZWYsIGxlbmd0aFN0ciwgSlNW
YWx1ZU1ha2VOdW1iZXIoY29udGV4dCwgMTApLCAwLCAwKTsKICAgICBKU1N0cmluZ1JlZiBwcml2
YXRlUHJvcGVydHlOYW1lID0gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoInByaXZhdGVQ
cm9wZXJ0eSIpOwogICAgIGlmICghSlNPYmplY3RTZXRQcml2YXRlUHJvcGVydHkoY29udGV4dCwg
bXlPYmplY3QsIHByaXZhdGVQcm9wZXJ0eU5hbWUsIGFIZWFwUmVmKSkgewpAQCAtOTM2LDYgKzkz
Nyw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyKiBhcmd2W10pCiAgICAgfSBlbHNlIHsKICAg
ICAgICAgcHJpbnRmKCJQQVNTOiBTZXQgcHJpdmF0ZSBwcm9wZXJ0eS5cbiIpOwogICAgIH0KKyAg
ICBhU3RhY2tSZWYgPSAwOwogICAgIGlmIChKU09iamVjdFNldFByaXZhdGVQcm9wZXJ0eShjb250
ZXh0LCBhSGVhcFJlZiwgcHJpdmF0ZVByb3BlcnR5TmFtZSwgYUhlYXBSZWYpKSB7CiAgICAgICAg
IHByaW50ZigiRkFJTDogSlNPYmplY3RTZXRQcml2YXRlUHJvcGVydHkgc2hvdWxkIGZhaWwgb24g
bm9uLUFQSSBvYmplY3RzLlxuIik7CiAgICAgICAgIGZhaWxlZCA9IDE7ICAgICAgICAKQEAgLTk2
NCw2ICs5NjYsNyBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciogYXJndltdKQogICAgIGZvciAo
aW50IGkgPSAwOyBpIDwgMTAwMDA7IGkrKykKICAgICAgICAgSlNPYmplY3RNYWtlKGNvbnRleHQs
IDAsIDApOwogCisgICAgYUhlYXBSZWYgPSBKU1ZhbHVlVG9PYmplY3QoY29udGV4dCwgSlNPYmpl
Y3RHZXRQcml2YXRlUHJvcGVydHkoY29udGV4dCwgbXlPYmplY3QsIHByaXZhdGVQcm9wZXJ0eU5h
bWUpLCAwKTsKICAgICBpZiAoSlNWYWx1ZVRvTnVtYmVyKGNvbnRleHQsIEpTT2JqZWN0R2V0UHJv
cGVydHkoY29udGV4dCwgYUhlYXBSZWYsIGxlbmd0aFN0ciwgMCksIDApICE9IDEwKSB7CiAgICAg
ICAgIHByaW50ZigiRkFJTDogUHJpdmF0ZSBwcm9wZXJ0eSBoYXMgYmVlbiBjb2xsZWN0ZWQuXG4i
KTsKICAgICAgICAgZmFpbGVkID0gMTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>