From 3601bcd5daf5d20a12e1c738b6fd85ade554cb41 Mon Sep 17 00:00:00 2001 From: wuzhihuitmac Date: Fri, 12 Sep 2025 13:42:15 +0800 Subject: [PATCH] Release fd Signed-off-by: wuzhihuitmac Change-Id: I515e894e56f0c6b6cf3e10438c97c7d01e05996b --- services/miscdevice_service/src/miscdevice_service.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/services/miscdevice_service/src/miscdevice_service.cpp b/services/miscdevice_service/src/miscdevice_service.cpp index bfa2f35..000de6c 100644 --- a/services/miscdevice_service/src/miscdevice_service.cpp +++ b/services/miscdevice_service/src/miscdevice_service.cpp @@ -686,13 +686,20 @@ int32_t MiscdeviceService::PlayVibratorCustom(const VibratorIdentifierIPC& ident JsonParser parser(rawFd); VibratorDecoderCreator creator; std::unique_ptr decoder(creator.CreateDecoder(parser)); - CHKPR(decoder, ERROR); + if (decoder == nullptr) { + MISC_HILOGE("decoder is nullptr"); + close(rawFd.fd); + return ERROR; + } + VibratePackage package; int32_t ret = decoder->DecodeEffect(rawFd, parser, package); if (ret != SUCCESS || package.patterns.empty()) { + close(rawFd.fd); MISC_HILOGE("Decode effect error"); return ERROR; } + close(rawFd.fd); MergeVibratorParmeters(customHapticInfoIPC.parameter, package); package.Dump(); VibrateInfo info = { -- Gitee