ScriptCachedFrameData::ScriptCachedFrameData(Frame& frame)
{
    JSLockHolder lock(JSDOMWindowBase::commonVM());

    ScriptController& scriptController = frame.script();
    Vector<JSC::Strong<JSDOMWindowShell>> windowShells = scriptController.windowShells();

    for (size_t i = 0; i < windowShells.size(); ++i) {
        JSDOMWindowShell* windowShell = windowShells[i].get();
        JSDOMWindow* window = windowShell->window();
        m_windows.add(&windowShell->world(), Strong<JSDOMWindow>(window->vm(), window));
        window->setConsoleClient(nullptr);
    }

    scriptController.attachDebugger(nullptr);
}