2008-06-30 Geoffrey Garen <ggaren@apple.com>
authorggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 1 Jul 2008 07:01:51 +0000 (07:01 +0000)
committerggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 1 Jul 2008 07:01:51 +0000 (07:01 +0000)
commit70bbcae27cc4318098664fffaa5d592dd2ed49a2
treefbed71389597eec3f9aa05d7b2488955cf56f478
parentd1c6cf401faf5cca8956a434c4fdce233d218cf7
2008-06-30  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Fixed a global object leak caused by the switch to one register file.

        Don't unconditionally mark the register file, since that logically
        makes all global variables GC roots, even when their global object is
        no longer reachable.

        Instead, make the global object associated with the register file
        responsible for marking the register file.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@34907 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore/ChangeLog
JavaScriptCore/VM/Machine.h
JavaScriptCore/kjs/JSGlobalData.cpp
JavaScriptCore/kjs/JSGlobalObject.cpp
JavaScriptCore/kjs/collector.cpp
JavaScriptCore/kjs/collector.h