Changeset 140270 in webkit


Ignore:
Timestamp:
Jan 20, 2013 2:35:00 AM (11 years ago)
Author:
haraken@chromium.org
Message:

[V8] Create a persistent wrapper for Window.prototype and innerGlobalObject
https://bugs.webkit.org/show_bug.cgi?id=107253

Reviewed by Adam Barth.

This is one of steps to avoid hitting an ASSERT()
that will be added in https://bugs.webkit.org/show_bug.cgi?id=107137 .
We should have a persistent wrapper for all DOM objects
and set a class id on the wrapper.

No tests. No change in behavior.

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::installDOMWindow):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r140267 r140270  
     12013-01-20  Kentaro Hara  <haraken@chromium.org>
     2
     3        [V8] Create a persistent wrapper for Window.prototype and innerGlobalObject
     4        https://bugs.webkit.org/show_bug.cgi?id=107253
     5
     6        Reviewed by Adam Barth.
     7
     8        This is one of steps to avoid hitting an ASSERT()
     9        that will be added in https://bugs.webkit.org/show_bug.cgi?id=107137 .
     10        We should have a persistent wrapper for all DOM objects
     11        and set a class id on the wrapper.
     12
     13        No tests. No change in behavior.
     14
     15        * bindings/v8/V8DOMWindowShell.cpp:
     16        (WebCore::V8DOMWindowShell::installDOMWindow):
     17
    1182013-01-19  Philip Rogers  <pdr@google.com>
    219
  • trunk/Source/WebCore/bindings/v8/V8DOMWindowShell.cpp

    r139900 r140270  
    318318    V8DOMWindow::installPerContextProperties(windowWrapper, window);
    319319
    320     V8DOMWrapper::setNativeInfo(v8::Handle<v8::Object>::Cast(windowWrapper->GetPrototype()), &V8DOMWindow::info, window);
     320    V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<DOMWindow>(window), &V8DOMWindow::info, v8::Handle<v8::Object>::Cast(windowWrapper->GetPrototype()), m_isolate);
    321321
    322322    // Install the windowWrapper as the prototype of the innerGlobalObject.
     
    334334    //
    335335    v8::Handle<v8::Object> innerGlobalObject = toInnerGlobalObject(m_context.get());
    336     V8DOMWrapper::setNativeInfo(innerGlobalObject, &V8DOMWindow::info, window);
     336    V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<DOMWindow>(window), &V8DOMWindow::info, innerGlobalObject, m_isolate);
    337337    innerGlobalObject->SetPrototype(windowWrapper);
    338338    V8DOMWrapper::associateObjectWithWrapper(PassRefPtr<DOMWindow>(window), &V8DOMWindow::info, windowWrapper, m_isolate);
Note: See TracChangeset for help on using the changeset viewer.