Changeset 35159 in webkit for trunk/JavaScriptCore/kjs/Shell.cpp


Ignore:
Timestamp:
Jul 14, 2008, 4:28:57 AM (17 years ago)
Author:
[email protected]
Message:

Reviewed by Geoff Garen.

Eliminate per-thread JavaScript global data instance support and make arbitrary
global data/global object combinations possible.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/Shell.cpp

    r35016 r35159  
    286286#endif
    287287
    288 int jscmain(int argc, char** argv);
     288int jscmain(int argc, char** argv, JSGlobalData*);
    289289
    290290int main(int argc, char** argv)
     
    301301    int res = 0;
    302302    TRY
    303         res = jscmain(argc, argv);
    304 #ifndef NDEBUG
    305         JSLock::lock(false);
    306         JSGlobalData::threadInstance().heap->collect();
    307         JSLock::unlock(false);
    308 #endif
     303        JSGlobalData* globalData = new JSGlobalData;
     304        res = jscmain(argc, argv, globalData);
     305        delete globalData;
    309306    EXCEPT(res = 3)
    310307    return res;
     
    447444}
    448445
    449 int jscmain(int argc, char** argv)
     446int jscmain(int argc, char** argv, JSGlobalData* globalData)
    450447{
    451448    KJS::initializeThreading();
     
    456453    parseArguments(argc, argv, options);
    457454
    458     GlobalObject* globalObject = new GlobalObject(options.arguments);
     455    GlobalObject* globalObject = new (globalData) GlobalObject(options.arguments);
    459456    bool success = runWithScripts(globalObject, options.fileNames, options.prettyPrint, options.dump);
    460457    if (options.interactive && success)
Note: See TracChangeset for help on using the changeset viewer.