| Index: sky/engine/bindings/scripts/templates/methods_cpp.template
|
| diff --git a/sky/engine/bindings/scripts/templates/methods_cpp.template b/sky/engine/bindings/scripts/templates/methods_cpp.template
|
| index aac59cd3b93159251450096d09fee9866e659823..aa32f392b27e921d47d6dec7f5ec222b24e98813 100644
|
| --- a/sky/engine/bindings/scripts/templates/methods_cpp.template
|
| +++ b/sky/engine/bindings/scripts/templates/methods_cpp.template
|
| @@ -335,7 +335,7 @@ static void {{static_method_name(constructor.name, overload_index)}}(Dart_Native
|
| ExceptionState es;
|
| {% endif %}
|
| {{generate_arguments(constructor) | indent(8)}}
|
| - {{callback_return(constructor, constructor.dart_set_return_value, constructor.cpp_value) | indent(8)}}
|
| + {{constructor.cpp_value}}->AssociateWithDartWrapper(args);
|
| {% if constructor.has_exception_state %}
|
| if (es.had_exception()) {
|
| exception = es.GetDartException(args, {{constructor.auto_scope}});
|
| @@ -368,6 +368,8 @@ static void eventConstructorCallback(Dart_NativeArguments args)
|
| {% macro generate_resolver_constructor(dart_class, class_name, constructor) %}
|
| {% for native_entry in constructor.native_entries %}
|
| {% set resolver_string = native_entry.resolver_string %}
|
| +{% set args_one_based = constructor.number_of_arguments + 1 %}
|
| +{% set args_required_one_based = constructor.number_of_required_arguments + 1 %}
|
| {% if constructor.overload_index %}
|
| {% set constructor_name = static_method_name(constructor.name) + "Dispatcher" %}
|
| {% else %}
|
| @@ -376,9 +378,9 @@ static void eventConstructorCallback(Dart_NativeArguments args)
|
| {% if has_custom_constructor %}
|
| if (name == "{{resolver_string}}") {
|
| {% elif constructor.number_of_arguments == constructor.number_of_required_arguments %}
|
| -if (argumentCount == {{constructor.number_of_arguments}} && name == "{{resolver_string}}") {
|
| +if (argumentCount == {{args_one_based}} && name == "{{resolver_string}}") {
|
| {% else %}
|
| -if (argumentCount >= {{constructor.number_of_required_arguments}} && argumentCount <= {{constructor.number_of_arguments}} && name == "{{resolver_string}}") {
|
| +if (argumentCount >= {{args_required_one_based}} && argumentCount <= {{args_one_based}} && name == "{{resolver_string}}") {
|
| {% endif %}
|
| *autoSetupScope = {{constructor.auto_scope}};
|
| return {{dart_class}}Internal::{{constructor_name}};
|
|
|