From 37d6b138913bab670c9624c2af30734d933ab3ad Mon Sep 17 00:00:00 2001 From: Robert Fancsik Date: Fri, 2 Oct 2020 11:08:57 +0200 Subject: [PATCH] Fix Symbol.description API reference count management (#4267) JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu --- jerry-core/api/jerry.c | 2 +- tests/unit-core/test-symbol.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/jerry-core/api/jerry.c b/jerry-core/api/jerry.c index 6d8d12763..9892aed16 100644 --- a/jerry-core/api/jerry.c +++ b/jerry-core/api/jerry.c @@ -3815,7 +3815,7 @@ jerry_get_symbol_description (const jerry_value_t symbol) /**< symbol value */ } /* Note: This operation cannot throw an error */ - return ecma_get_symbol_description (ecma_get_symbol_from_value (symbol)); + return ecma_copy_value (ecma_get_symbol_description (ecma_get_symbol_from_value (symbol))); #else /* !ENABLED (JERRY_ESNEXT) */ JERRY_UNUSED (symbol); diff --git a/tests/unit-core/test-symbol.c b/tests/unit-core/test-symbol.c index ad84010fd..b60aa6491 100644 --- a/tests/unit-core/test-symbol.c +++ b/tests/unit-core/test-symbol.c @@ -191,6 +191,7 @@ main (void) jerry_string_to_char_buffer (bar_symbol_string, str_buff, bar_symbol_string_size); TEST_ASSERT (memcmp (str_buff, STRING_BAR, sizeof (SYMBOL_DESCIPTION_BAR) - 1) == 0); + jerry_release_value (bar_symbol_string); jerry_release_value (bar_symbol); /* Test symbol get description operation with undefined description */