| Index: Source/bindings/scripts/v8_methods.py
|
| diff --git a/Source/bindings/scripts/v8_methods.py b/Source/bindings/scripts/v8_methods.py
|
| index e76e818c39baa0434dfc7af612adc2948dc14de6..fe5d591b1eaf6c1f06c23db3a3c53c0dccde0657 100644
|
| --- a/Source/bindings/scripts/v8_methods.py
|
| +++ b/Source/bindings/scripts/v8_methods.py
|
| @@ -71,6 +71,9 @@ def generate_method(interface, method):
|
| if is_custom_element_callbacks:
|
| includes.add('core/dom/custom/CustomElementCallbackDispatcher.h')
|
|
|
| + has_event_listener_argument = any(
|
| + argument for argument in arguments
|
| + if argument.idl_type.name == 'EventListener')
|
| is_check_security_for_frame = (
|
| 'CheckSecurity' in interface.extended_attributes and
|
| 'DoNotCheckSecurity' not in extended_attributes)
|
| @@ -90,13 +93,14 @@ def generate_method(interface, method):
|
| 'ReadOnly', 'RuntimeEnabled', 'Unforgeable'])),
|
| 'function_template': function_template(),
|
| 'idl_type': idl_type.base_type,
|
| + 'has_event_listener_argument': has_event_listener_argument,
|
| 'has_exception_state':
|
| + has_event_listener_argument or
|
| is_raises_exception or
|
| is_check_security_for_frame or
|
| any(argument for argument in arguments
|
| if argument.idl_type.name == 'SerializedScriptValue' or
|
| - argument.idl_type.is_integer_type) or
|
| - name in ['addEventListener', 'removeEventListener', 'dispatchEvent'],
|
| + argument.idl_type.is_integer_type),
|
| 'is_call_with_execution_context': has_extended_attribute_value(method, 'CallWith', 'ExecutionContext'),
|
| 'is_call_with_script_arguments': is_call_with_script_arguments,
|
| 'is_call_with_script_state': is_call_with_script_state,
|
| @@ -146,6 +150,9 @@ def generate_argument(interface, method, argument, index):
|
| 'cpp_value': this_cpp_value,
|
| 'enum_validation_expression': idl_type.enum_validation_expression,
|
| 'has_default': 'Default' in extended_attributes,
|
| + 'has_event_listener_argument': any(
|
| + argument_so_far for argument_so_far in method.arguments[:index]
|
| + if argument_so_far.idl_type.name == 'EventListener'),
|
| 'idl_type_object': idl_type,
|
| # Dictionary is special-cased, but arrays and sequences shouldn't be
|
| 'idl_type': not idl_type.array_or_sequence_type and idl_type.base_type,
|
|
|