From fa6e267ae4037e2f84ca75013f723bea2687c4ea Mon Sep 17 00:00:00 2001 From: Lyupa Anastasia Date: Mon, 30 Jun 2025 18:02:37 +0300 Subject: [PATCH] Revert "Revert Union Type" This reverts commit 8caf8879f9315f079f939e7a30394cdcb51f91f9. Issue: https://gitee.com/openharmony/arkcompiler_runtime_core/issues/ICIYJL Signed-off-by: Lyupa Anastasia --- .../ability_delegator/src/ets_ability_delegator_utils.cpp | 6 ++++-- .../ani/form_extension_ability/src/sts_form_extension.cpp | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/frameworks/ets/ani/ability_delegator/src/ets_ability_delegator_utils.cpp b/frameworks/ets/ani/ability_delegator/src/ets_ability_delegator_utils.cpp index e1ee4887856..4b9d9144956 100644 --- a/frameworks/ets/ani/ability_delegator/src/ets_ability_delegator_utils.cpp +++ b/frameworks/ets/ani/ability_delegator/src/ets_ability_delegator_utils.cpp @@ -169,14 +169,16 @@ void SetParameters(ani_env *aniEnv, ani_class arguments, ani_object argumentObje TAG_LOGE(AAFwkTag::DELEGATOR, "FindClass failed status: %{public}d", status); return; } + static const char *recordGetName = "X{C{std.core.Numeric}C{std.core.String}}:C{std.core.Object}"; ani_method recordGetMethod; - status = aniEnv->Class_FindMethod(recordCls, "$_get", "Lstd/core/Object;:Lstd/core/Object;", &recordGetMethod); + status = aniEnv->Class_FindMethod(recordCls, "$_get", recordGetName, &recordGetMethod); if (status != ANI_OK) { TAG_LOGE(AAFwkTag::DELEGATOR, "Class_FindMethod failed status: %{public}d", status); return; } + static const char *recordSetName = "X{C{std.core.Numeric}C{std.core.String}}C{std.core.Object}:"; ani_method recordSetMethod; - status = aniEnv->Class_FindMethod(recordCls, "$_set", "Lstd/core/Object;Lstd/core/Object;:V", &recordSetMethod); + status = aniEnv->Class_FindMethod(recordCls, "$_set", recordSetName, &recordSetMethod); if (status != ANI_OK) { TAG_LOGE(AAFwkTag::DELEGATOR, "Class_FindMethod failed status: %{public}d", status); return; diff --git a/frameworks/ets/ani/form_extension_ability/src/sts_form_extension.cpp b/frameworks/ets/ani/form_extension_ability/src/sts_form_extension.cpp index 8a59dfe0278..d33f234b1c7 100644 --- a/frameworks/ets/ani/form_extension_ability/src/sts_form_extension.cpp +++ b/frameworks/ets/ani/form_extension_ability/src/sts_form_extension.cpp @@ -589,8 +589,9 @@ bool STSFormExtension::CreateAndFillRecordObject(ani_env *env, const std::mapClass_FindMethod(recordCls, "$_set", "Lstd/core/Object;Lstd/core/Object;:V", &recordSetMethod); + status = env->Class_FindMethod(recordCls, "$_set", recordSetName, &recordSetMethod); if (status != ANI_OK) { TAG_LOGE(AAFwkTag::FORM_EXT, "Class_FindMethod set failed: %{public}d", status); return false; -- Gitee