2011-04-25 Geoffrey Garen <ggaren@apple.com>
authorggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 26 Apr 2011 06:23:14 +0000 (06:23 +0000)
committerggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 26 Apr 2011 06:23:14 +0000 (06:23 +0000)
commit58edff1f05ce3d2cec87f659025bb77b33852abf
treecef8ff387ba9879d9c238398163580fa592e5db9
parentb1372296ede6ca663b7450c85200f716865ed49b
2011-04-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Custom prototypes on DOM objects don't persist after garbage collection
        https://bugs.webkit.org/show_bug.cgi?id=59412

        SunSpider reports no change.

        The hasCustomProperties() check didn't check for a custom prototype.

        * runtime/JSObject.h:
        (JSC::JSObject::hasCustomProperties): Changed to delegate to Structure
        because it is the "truth" about an object's pedigree.

        * runtime/Structure.cpp:
        (JSC::Structure::Structure):
        * runtime/Structure.h:
        (JSC::Structure::didTransition): Track whether a Structure has ever
        transitioned for any reason. If so, we have to assume that the object
        holding it is custom in some way.
2011-04-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Custom prototypes on DOM objects don't persist after garbage collection
        https://bugs.webkit.org/show_bug.cgi?id=59412

        * fast/dom/gc-custom-prototype-expected.txt: Added.
        * fast/dom/gc-custom-prototype.html: Added.
        * fast/dom/script-tests/dataset-gc.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@84882 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/dom/gc-custom-prototype-expected.txt [new file with mode: 0644]
LayoutTests/fast/dom/gc-custom-prototype.html [new file with mode: 0644]
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/JSObject.h
Source/JavaScriptCore/runtime/Structure.cpp
Source/JavaScriptCore/runtime/Structure.h