[V8] Pass Isolate to ArrayValue and Dictionary
authorharaken@chromium.org <haraken@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 8 Aug 2012 09:45:23 +0000 (09:45 +0000)
committerharaken@chromium.org <haraken@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 8 Aug 2012 09:45:23 +0000 (09:45 +0000)
commitd9e728dc8544682579264d752303cdbab91bf269
tree1a1deef6b73206ace3cafe2fa8c56b5a6a351e4b
parent52a3d03569c739ed09db9723ac1e3f070169d791
[V8] Pass Isolate to ArrayValue and Dictionary
https://bugs.webkit.org/show_bug.cgi?id=93315

Reviewed by Adam Barth.

This patch passes Isolate to ArrayValue and Dictionary.

Rationale 1: We want to replace V8Proxy::throwError(ExceptionCode)
with setDOMException(ExceptionCode, Isolate*). For the replacement,
we need to pass Isolate to V8Utilities::extractTransferables().
To pass Isolate to V8Utilities::extractTransferables(), ( ...omitted... ),
we need to pass Isolate to ArrayValue and Dictionary.

Rationale 2: JSC already passes ExecState to ArrayValue and Dictionary.

Tests: storage/indexeddb/*
       fast/files/*

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateEventConstructorCallback):
(JSValueToNative):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::constructorCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::optionsObjectCallback):
* bindings/v8/ArrayValue.cpp:
(WebCore::ArrayValue::operator=):
(WebCore::ArrayValue::get):
* bindings/v8/ArrayValue.h:
(WebCore::ArrayValue::ArrayValue):
(ArrayValue):
* bindings/v8/Dictionary.cpp:
(WebCore::Dictionary::Dictionary):
(WebCore::Dictionary::operator=):
(WebCore::Dictionary::get):
* bindings/v8/Dictionary.h:
(Dictionary):
* bindings/v8/custom/V8BlobCustom.cpp:
(WebCore::V8Blob::constructorCallback):
* bindings/v8/custom/V8IntentConstructor.cpp:
(WebCore::V8Intent::constructorCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@125012 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/bindings/scripts/CodeGeneratorV8.pm
Source/WebCore/bindings/scripts/test/V8/V8TestEventConstructor.cpp
Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp
Source/WebCore/bindings/v8/ArrayValue.cpp
Source/WebCore/bindings/v8/ArrayValue.h
Source/WebCore/bindings/v8/Dictionary.cpp
Source/WebCore/bindings/v8/Dictionary.h
Source/WebCore/bindings/v8/custom/V8BlobCustom.cpp
Source/WebCore/bindings/v8/custom/V8IntentConstructor.cpp