Index: Source/bindings/scripts/v8_methods.py |
diff --git a/Source/bindings/scripts/v8_methods.py b/Source/bindings/scripts/v8_methods.py |
index 5831603c1503011358bb44e4bf6c6bf4e72db6a5..eab6a0460c266ecb0790d3251b3ba734c79f2956 100644 |
--- a/Source/bindings/scripts/v8_methods.py |
+++ b/Source/bindings/scripts/v8_methods.py |
@@ -371,8 +371,13 @@ def v8_value_to_local_cpp_variadic_value(method, argument, index, return_promise |
else: |
check_expression = 'exceptionState.throwIfNeeded()' |
+ if idl_type.is_dictionary or idl_type.is_union_type: |
+ vector_type = 'HeapVector' |
+ else: |
+ vector_type = 'Vector' |
+ |
return { |
- 'assign_expression': 'toImplArguments<%s>(info, %s, exceptionState)' % (this_cpp_type, index), |
+ 'assign_expression': 'toImplArguments<%s<%s>>(info, %s, exceptionState)' % (vector_type, this_cpp_type, index), |
'check_expression': check_expression, |
'cpp_type': this_cpp_type, |
'cpp_name': argument.name, |