From 3ed16ad09780a65439a1dcecc46c724b8da798ce Mon Sep 17 00:00:00 2001 From: lin-jianwu Date: Tue, 15 Feb 2022 19:06:58 +0800 Subject: [PATCH 1/2] fix release Signed-off-by: lin-jianwu Change-Id: I59b21bdbb35b9325d6e751c7e78cc034ad5bc501 --- .../kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp b/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp index 474e3b9c6..5abbbd3c0 100644 --- a/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp +++ b/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp @@ -623,6 +623,10 @@ napi_value VideoDecoderNapi::ReleaseOutput(napi_env env, napi_callback_info info (void)napi_unwrap(env, jsThis, reinterpret_cast(&asyncCtx->napi)); + if (asyncCtx->napi->codecHelper_->IsStop() || asyncCtx->napi->codecHelper_->IsFlushing()) { + return result; + } + napi_value resource = nullptr; napi_create_string_utf8(env, "ReleaseOutput", NAPI_AUTO_LENGTH, &resource); NAPI_CALL(env, napi_create_async_work(env, nullptr, resource, -- Gitee From 35437063de4917b384cafb83f13b7e57579dd4a3 Mon Sep 17 00:00:00 2001 From: lin-jianwu Date: Tue, 15 Feb 2022 19:46:17 +0800 Subject: [PATCH 2/2] fix release Signed-off-by: lin-jianwu Change-Id: Ie36d1562b4f01a41bc91a1860c7413400d23fcf0 --- .../kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp b/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp index 5abbbd3c0..049bae9f4 100644 --- a/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp +++ b/frameworks/kitsimpl/js/avcodec/video_decoder/video_decoder_napi.cpp @@ -624,6 +624,7 @@ napi_value VideoDecoderNapi::ReleaseOutput(napi_env env, napi_callback_info info (void)napi_unwrap(env, jsThis, reinterpret_cast(&asyncCtx->napi)); if (asyncCtx->napi->codecHelper_->IsStop() || asyncCtx->napi->codecHelper_->IsFlushing()) { + MEDIA_LOGD("Stop already or flushing, release output failed"); return result; } -- Gitee