| Index: Source/bindings/scripts/code_generator_v8.pm
|
| diff --git a/Source/bindings/scripts/code_generator_v8.pm b/Source/bindings/scripts/code_generator_v8.pm
|
| index 2ddd0ba52cc721cb5ae8b088eca4b738036840e0..f29013b69fb281a91c2829f1c40f2dec59ceea2e 100644
|
| --- a/Source/bindings/scripts/code_generator_v8.pm
|
| +++ b/Source/bindings/scripts/code_generator_v8.pm
|
| @@ -1257,7 +1257,7 @@ static void ${implClassName}DomainSafeFunctionSetter(v8::Local<v8::String> name,
|
| if (holder.IsEmpty())
|
| return;
|
| ${implClassName}* imp = ${v8ClassName}::toNative(holder);
|
| - ExceptionState es(info.GetIsolate());
|
| + ExceptionState es(info.Holder(), info.GetIsolate());
|
| if (!BindingSecurity::shouldAllowAccessToFrame(imp->frame(), es)) {
|
| es.throwIfNeeded();
|
| return;
|
| @@ -1495,7 +1495,7 @@ END
|
| if ($useExceptions || $attribute->extendedAttributes->{"CheckSecurityForNode"}) {
|
| AddToImplIncludes("bindings/v8/ExceptionMessages.h");
|
| AddToImplIncludes("bindings/v8/ExceptionState.h");
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
|
|
| # Generate security checks if necessary
|
| @@ -1764,7 +1764,7 @@ END
|
| AddToImplIncludes("bindings/v8/BindingSecurity.h");
|
| $code .= <<END;
|
| ${implClassName}* imp = ${v8ClassName}::toNative(info.Holder());
|
| - ExceptionState es(info.GetIsolate());
|
| + ExceptionState es(info.Holder(), info.GetIsolate());
|
| if (!BindingSecurity::shouldAllowAccessToFrame(imp->frame(), es)) {
|
| es.throwIfNeeded();
|
| return;
|
| @@ -1997,7 +1997,7 @@ END
|
| if ($useExceptions) {
|
| AddToImplIncludes("bindings/v8/ExceptionMessages.h");
|
| AddToImplIncludes("bindings/v8/ExceptionState.h");
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
|
|
| if ($attribute->type eq "EventHandler") {
|
| @@ -2300,7 +2300,7 @@ sub GenerateFunction
|
| $code .= <<END;
|
| EventTarget* impl = ${v8ClassName}::toNative(info.Holder());
|
| if (DOMWindow* window = impl->toDOMWindow()) {
|
| - ExceptionState es(info.GetIsolate());
|
| + ExceptionState es(info.Holder(), info.GetIsolate());
|
| if (!BindingSecurity::shouldAllowAccessToFrame(window->frame(), es)) {
|
| es.throwIfNeeded();
|
| return;
|
| @@ -2369,7 +2369,7 @@ END
|
| if ($raisesExceptions) {
|
| AddToImplIncludes("bindings/v8/ExceptionMessages.h");
|
| AddToImplIncludes("bindings/v8/ExceptionState.h");
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
|
|
| # Check domain security if needed
|
| @@ -2698,7 +2698,7 @@ END
|
| if ($raisesExceptions) {
|
| AddToImplIncludes("bindings/v8/ExceptionMessages.h");
|
| AddToImplIncludes("bindings/v8/ExceptionState.h");
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
|
|
| # FIXME: Currently [Constructor(...)] does not yet support optional arguments without [Default=...]
|
| @@ -2990,7 +2990,7 @@ END
|
| if ($raisesExceptions) {
|
| AddToImplIncludes("bindings/v8/ExceptionMessages.h");
|
| AddToImplIncludes("bindings/v8/ExceptionState.h");
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
|
|
| my ($parameterCheckString, $paramIndex, %replacements) = GenerateParametersCheck($function, $interface);
|
| @@ -3492,7 +3492,7 @@ sub GenerateImplementationIndexedPropertyGetter
|
| $getterCode .= " ASSERT(V8DOMWrapper::maybeDOMWrapper(info.Holder()));\n";
|
| $getterCode .= " ${implClassName}* collection = ${v8ClassName}::toNative(info.Holder());\n";
|
| if ($raisesExceptions) {
|
| - $getterCode .= " ExceptionState es(info.GetIsolate());\n";
|
| + $getterCode .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
| $getterCode .= $methodCallCode . "\n";
|
| if ($raisesExceptions) {
|
| @@ -3592,7 +3592,7 @@ sub GenerateImplementationIndexedPropertySetter
|
|
|
| my $extraArguments = "";
|
| if ($raisesExceptions) {
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| $extraArguments = ", es";
|
| }
|
| my @conditions = ();
|
| @@ -3857,7 +3857,7 @@ sub GenerateImplementationNamedPropertyGetter
|
| $code .= " ${implClassName}* collection = ${v8ClassName}::toNative(info.Holder());\n";
|
| $code .= " AtomicString propertyName = toWebCoreAtomicString(name);\n";
|
| if ($raisesExceptions) {
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| }
|
| $code .= $methodCallCode . "\n";
|
| if ($raisesExceptions) {
|
| @@ -3904,7 +3904,7 @@ sub GenerateImplementationNamedPropertySetter
|
| $code .= JSValueToNativeStatement($namedSetterFunction->parameters->[1]->type, $namedSetterFunction->extendedAttributes, $asSetterValue, "jsValue", "propertyValue", " ", "info.GetIsolate()");
|
| my $extraArguments = "";
|
| if ($raisesExceptions) {
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| $extraArguments = ", es";
|
| }
|
|
|
| @@ -3948,7 +3948,7 @@ sub GenerateImplementationIndexedPropertyDeleter
|
| $code .= " ${implClassName}* collection = ${v8ClassName}::toNative(info.Holder());\n";
|
| my $extraArguments = "";
|
| if ($raisesExceptions) {
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| $extraArguments = ", es";
|
| }
|
| $code .= " bool result = collection->${methodName}(index$extraArguments);\n";
|
| @@ -3977,7 +3977,7 @@ sub GenerateImplementationNamedPropertyDeleter
|
| $code .= " AtomicString propertyName = toWebCoreAtomicString(name);\n";
|
| my $extraArguments = "";
|
| if ($raisesExceptions) {
|
| - $code .= " ExceptionState es(info.GetIsolate());\n";
|
| + $code .= " ExceptionState es(info.Holder(), info.GetIsolate());\n";
|
| $extraArguments = ", es";
|
| }
|
| $code .= " bool result = collection->${methodName}(propertyName$extraArguments);\n";
|
| @@ -3999,7 +3999,7 @@ sub GenerateImplementationNamedPropertyEnumerator
|
| $implementation{nameSpaceInternal}->add(<<END);
|
| static void namedPropertyEnumerator(const v8::PropertyCallbackInfo<v8::Array>& info)
|
| {
|
| - ExceptionState es(info.GetIsolate());
|
| + ExceptionState es(info.Holder(), info.GetIsolate());
|
| ${implClassName}* collection = ${v8ClassName}::toNative(info.Holder());
|
| Vector<String> names;
|
| collection->namedPropertyEnumerator(names, es);
|
| @@ -4025,7 +4025,7 @@ static void namedPropertyQuery(v8::Local<v8::String> name, const v8::PropertyCal
|
| {
|
| ${implClassName}* collection = ${v8ClassName}::toNative(info.Holder());
|
| AtomicString propertyName = toWebCoreAtomicString(name);
|
| - ExceptionState es(info.GetIsolate());
|
| + ExceptionState es(info.Holder(), info.GetIsolate());
|
| bool result = collection->namedPropertyQuery(propertyName, es);
|
| if (es.throwIfNeeded())
|
| return;
|
|
|