From 1b8b2a7f032a4c26fcd0d20bdeaaa61ee577af1d Mon Sep 17 00:00:00 2001 From: wanghongen Date: Tue, 9 Sep 2025 20:23:06 +0800 Subject: [PATCH 1/3] =?UTF-8?q?6.0.0=E5=91=8A=E8=AD=A6=E6=B8=85=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: wanghongen --- adapter/platform/i2c/i2c_bes.c | 3 +++ adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp | 12 ++++++++++-- .../model/audio/common/src/audio_platform_base.c | 4 ++++ .../model/audio/usb/src/audio_usb_parse_interface.c | 4 ++++ 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/adapter/platform/i2c/i2c_bes.c b/adapter/platform/i2c/i2c_bes.c index cbb23a4af..029ed23cf 100755 --- a/adapter/platform/i2c/i2c_bes.c +++ b/adapter/platform/i2c/i2c_bes.c @@ -381,6 +381,9 @@ static int32_t i2c_transfer(struct I2cDevice *device, struct I2cMsg *msgs, int16 } } else if (msg->flags == I2C_FLAG_STOP) { i++; + if (i >= count) { + return i; + } msg2 = &msgs[i]; ret = hal_i2c_task_recv(i2cPort, msg->addr, msg->buf, msg->len, msg2->buf, msg2->len, 0, NULL); if (ret != 0) { diff --git a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp index 413986057..168759f4a 100644 --- a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp +++ b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp @@ -407,13 +407,21 @@ extern "C" struct HdfSBufImpl *SbufBindIpc(uintptr_t base, size_t size) { struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(new MessageParcel(new SbufAllocator())); sbuf->realParcel_->ParseFrom(base, size); - return &sbuf->infImpl; + struct HdfSBufImpl *ret = &sbuf->infImpl; + if (ret = null) { + delete sbuf; + } + return ret; } // LCOV_EXCL_STOP struct HdfSBuf *ParcelToSbuf(OHOS::MessageParcel *parcel) { struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(parcel, false); - return HdfSbufTypedObtainInplace(SBUF_IPC, &sbuf->infImpl); + struct HdfSBuf *ret = HdfSbufTypedObtainInplace(SBUF_IPC, &sbuf->infImpl); + if (ret = null) { + delete sbuf; + } + return ret; } int32_t SbufToParcel(struct HdfSBuf *sbuf, OHOS::MessageParcel **parcel) diff --git a/framework/model/audio/common/src/audio_platform_base.c b/framework/model/audio/common/src/audio_platform_base.c index b16fe518e..3299ba38f 100755 --- a/framework/model/audio/common/src/audio_platform_base.c +++ b/framework/model/audio/common/src/audio_platform_base.c @@ -503,6 +503,10 @@ static int32_t AudioMmapWriteTransfer(const struct AudioCard *card) uint32_t loopTimes; char *tmpBuf = NULL; + if (card == NULL) { + AUDIO_DRIVER_LOG_ERR("card is null."); + return HDF_FAILURE; + } struct PlatformData *data = PlatformDataFromCard(card); if (AudioRenderPlatformDataInit(data, &totalSize, &lastBuffSize, &loopTimes) == HDF_FAILURE) { return HDF_FAILURE; diff --git a/framework/model/audio/usb/src/audio_usb_parse_interface.c b/framework/model/audio/usb/src/audio_usb_parse_interface.c index 6527c7d03..6c75dc7d1 100644 --- a/framework/model/audio/usb/src/audio_usb_parse_interface.c +++ b/framework/model/audio/usb/src/audio_usb_parse_interface.c @@ -772,6 +772,10 @@ static int32_t AudioUsbV1SetSampleRate(struct AudioUsbDriver *audioUsbDriver, in dev = interface_to_usbdev(audioUsbDriver->usbIf); inteDesc = AudioUsbGetIfaceDesc(alts); + if (inteDesc == NULL) { + AUDIO_DRIVER_LOG_ERR("inteDesc is NULL."); + return HDF_FAILURE; + } if (inteDesc->bNumEndpoints < 1) { return HDF_ERR_INVALID_PARAM; } -- Gitee From 758ce9365924052670939e8167b4baefadc4c90c Mon Sep 17 00:00:00 2001 From: wanghongenaf Date: Tue, 9 Sep 2025 12:45:45 +0000 Subject: [PATCH 2/3] update adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp. Signed-off-by: wanghongenaf --- adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp index 168759f4a..519c4b645 100644 --- a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp +++ b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp @@ -408,7 +408,7 @@ extern "C" struct HdfSBufImpl *SbufBindIpc(uintptr_t base, size_t size) struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(new MessageParcel(new SbufAllocator())); sbuf->realParcel_->ParseFrom(base, size); struct HdfSBufImpl *ret = &sbuf->infImpl; - if (ret = null) { + if (ret = nullptr) { delete sbuf; } return ret; @@ -418,7 +418,7 @@ struct HdfSBuf *ParcelToSbuf(OHOS::MessageParcel *parcel) { struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(parcel, false); struct HdfSBuf *ret = HdfSbufTypedObtainInplace(SBUF_IPC, &sbuf->infImpl); - if (ret = null) { + if (ret = nullptr) { delete sbuf; } return ret; -- Gitee From 7cd16b4dcbbb1936b045950504963c0217bbce3f Mon Sep 17 00:00:00 2001 From: wanghongenaf Date: Wed, 10 Sep 2025 01:07:04 +0000 Subject: [PATCH 3/3] update adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp. Signed-off-by: wanghongenaf --- adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp index 519c4b645..30b4f5134 100644 --- a/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp +++ b/adapter/uhdf2/ipc/src/hdf_sbuf_impl_hipc.cpp @@ -408,7 +408,7 @@ extern "C" struct HdfSBufImpl *SbufBindIpc(uintptr_t base, size_t size) struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(new MessageParcel(new SbufAllocator())); sbuf->realParcel_->ParseFrom(base, size); struct HdfSBufImpl *ret = &sbuf->infImpl; - if (ret = nullptr) { + if (ret == nullptr) { delete sbuf; } return ret; @@ -418,7 +418,7 @@ struct HdfSBuf *ParcelToSbuf(OHOS::MessageParcel *parcel) { struct SBufMParcelImpl *sbuf = new SBufMParcelImpl(parcel, false); struct HdfSBuf *ret = HdfSbufTypedObtainInplace(SBUF_IPC, &sbuf->infImpl); - if (ret = nullptr) { + if (ret == nullptr) { delete sbuf; } return ret; -- Gitee