#include <JavaScriptCore/Completion.h>
#include <JavaScriptCore/SourceCode.h>
-JSGlueGlobalObject::JSGlueGlobalObject(PassRefPtr<Structure> structure, JSFlags flags)
- : JSGlobalObject(structure, new Data, this)
+JSGlueGlobalObject::JSGlueGlobalObject(JSGlobalData& globalData, Structure* structure, JSFlags flags)
+ : JSGlobalObject(globalData, structure)
+ , m_flags(flags)
+ , m_userObjectStructure(globalData, UserObjectImp::createStructure(globalData, jsNull()))
{
- d()->flags = flags;
- d()->userObjectStructure = UserObjectImp::createStructure(jsNull());
-}
-
-void JSGlueGlobalObject::destroyData(void* data)
-{
- delete static_cast<Data*>(data);
}
JSRun::JSRun(CFStringRef source, JSFlags inFlags)
: JSBase(kJSRunTypeID),
fSource(CFStringToUString(source)),
- fGlobalObject(getThreadGlobalExecState()->globalData(), new (&getThreadGlobalExecState()->globalData()) JSGlueGlobalObject(JSGlueGlobalObject::createStructure(jsNull()), inFlags)),
+ fGlobalObject(getThreadGlobalExecState()->globalData(), new (&getThreadGlobalExecState()->globalData()) JSGlueGlobalObject(getThreadGlobalExecState()->globalData(), JSGlueGlobalObject::createStructure(getThreadGlobalExecState()->globalData(), jsNull()), inFlags)),
fFlags(inFlags)
{
}