JSDOMWindowShell* ScriptController::createWindowShell(DOMWrapperWorld* world) { ASSERT(!m_windowShells.contains(world)); Strong<JSDOMWindowShell> windowShell(*world->globalData(), new JSDOMWindowShell(m_frame->domWindow(), world)); Strong<JSDOMWindowShell> windowShell2(windowShell); m_windowShells.add(world, windowShell); world->didCreateWindowShell(this); return windowShell.get(); }
JSDOMWindowShell* ScriptController::createWindowShell(DOMWrapperWorld* world) { ASSERT(!m_windowShells.contains(world)); Structure* structure = JSDOMWindowShell::createStructure(*world->globalData(), jsNull()); Strong<JSDOMWindowShell> windowShell(*world->globalData(), JSDOMWindowShell::create(m_frame->document()->domWindow(), structure, world)); Strong<JSDOMWindowShell> windowShell2(windowShell); m_windowShells.add(world, windowShell); world->didCreateWindowShell(this); return windowShell.get(); }
JSDOMWindowShell& ScriptController::createWindowShell(DOMWrapperWorld& world) { ASSERT(!m_windowShells.contains(&world)); VM& vm = world.vm(); Structure* structure = JSDOMWindowShell::createStructure(vm, jsNull()); Strong<JSDOMWindowShell> windowShell(vm, JSDOMWindowShell::create(vm, m_frame.document()->domWindow(), structure, world)); Strong<JSDOMWindowShell> windowShell2(windowShell); m_windowShells.add(&world, windowShell); world.didCreateWindowShell(this); return *windowShell.get(); }