Skip to content
  • darin@apple.com's avatar
    2008-09-30 Darin Adler <darin@apple.com> · 4447cd6e
    darin@apple.com authored
            Reviewed by Eric Seidel.
    
            - https://bugs.webkit.org/show_bug.cgi?id=21214
              work on getting rid of ExecState
    
            Eliminate some unneeded uses of dynamicGlobalObject.
    
            * API/JSClassRef.cpp:
            (OpaqueJSClass::contextData): Changed to use a map in the global data instead
            of on the global object. Also fixed to use only a single hash table lookup.
    
            * API/JSObjectRef.cpp:
            (JSObjectMakeConstructor): Use lexicalGlobalObject rather than dynamicGlobalObject
            to get the object prototype.
    
            * kjs/ArrayPrototype.cpp:
            (JSC::arrayProtoFuncToString): Use arrayVisitedElements set in global data rather
            than in the global object.
            (JSC::arrayProtoFuncToLocaleString): Ditto.
            (JSC::arrayProtoFuncJoin): Ditto.
    
            * kjs/JSGlobalData.cpp:
            (JSC::JSGlobalData::JSGlobalData): Don't initialize opaqueJSClassData, since
            it's no longer a pointer.
            (JSC::JSGlobalData::~JSGlobalData): We still need to delete all the values, but
            we don't need to delete the map since it's no longer a pointer.
    
            * kjs/JSGlobalData.h: Made opaqueJSClassData a map instead of a pointer to a map.
            Also added arrayVisitedElements.
    
            * kjs/JSGlobalObject.h: Removed arrayVisitedElements.
    
            * kjs/Shell.cpp:
            (functionRun): Use lexicalGlobalObject instead of dynamicGlobalObject.
            (functionLoad): Ditto.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    4447cd6e