From 7262280ba88c04ab9b46bc703319b2d93b201b21 Mon Sep 17 00:00:00 2001 From: Pawin Vongmasa Date: Mon, 6 May 2019 20:45:04 -0700 Subject: [PATCH] Zero-initialize HIDL structs before passing Test: make cts -j123 && cts-tradefed run cts-dev -m \ CtsMediaTestCases --compatibility:module-arg \ CtsMediaTestCases:include-annotation:\ android.platform.test.annotations.RequiresDevice Bug: 131267328 Bug: 131356202 Change-Id: Ie91b7946f8f4406fd06e9cb4ad883b3a2704f366 Merged-In: I2f696aa85143f74f753fbb0320dce5aee88846c4 (cherry picked from commit cad25f332373d834f80872239b5b06ab38274ee2) --- .../bqhelper/WGraphicBufferProducer.h | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/media/libstagefright/bqhelper/include/media/stagefright/bqhelper/WGraphicBufferProducer.h b/media/libstagefright/bqhelper/include/media/stagefright/bqhelper/WGraphicBufferProducer.h index 8ddf20f9426..c14a1c25977 100644 --- a/media/libstagefright/bqhelper/include/media/stagefright/bqhelper/WGraphicBufferProducer.h +++ b/media/libstagefright/bqhelper/include/media/stagefright/bqhelper/WGraphicBufferProducer.h @@ -68,7 +68,7 @@ struct TWGraphicBufferProducer : public BASE { Return requestBuffer(int32_t slot, HGraphicBufferProducer::requestBuffer_cb _hidl_cb) override { sp buf; status_t status = mBase->requestBuffer(slot, &buf); - AnwBuffer anwBuffer; + AnwBuffer anwBuffer{}; if (buf != nullptr) { ::android::conversion::wrapAs(&anwBuffer, *buf); } @@ -89,15 +89,15 @@ struct TWGraphicBufferProducer : public BASE { uint32_t width, uint32_t height, ::android::hardware::graphics::common::V1_0::PixelFormat format, uint32_t usage, bool getFrameTimestamps, HGraphicBufferProducer::dequeueBuffer_cb _hidl_cb) override { - int slot; + int slot{}; sp fence; ::android::FrameEventHistoryDelta outTimestamps; status_t status = mBase->dequeueBuffer( &slot, &fence, width, height, static_cast<::android::PixelFormat>(format), usage, nullptr, getFrameTimestamps ? &outTimestamps : nullptr); - hidl_handle tFence; - HGraphicBufferProducer::FrameEventHistoryDelta tOutTimestamps; + hidl_handle tFence{}; + HGraphicBufferProducer::FrameEventHistoryDelta tOutTimestamps{}; native_handle_t* nh = nullptr; if ((fence == nullptr) || !::android::conversion::wrapAs(&tFence, &nh, *fence)) { @@ -144,8 +144,8 @@ struct TWGraphicBufferProducer : public BASE { sp outBuffer; sp outFence; status_t status = mBase->detachNextBuffer(&outBuffer, &outFence); - AnwBuffer tBuffer; - hidl_handle tFence; + AnwBuffer tBuffer{}; + hidl_handle tFence{}; if (outBuffer == nullptr) { LOG(ERROR) << "TWGraphicBufferProducer::detachNextBuffer - " @@ -185,7 +185,7 @@ struct TWGraphicBufferProducer : public BASE { Return queueBuffer( int32_t slot, const HGraphicBufferProducer::QueueBufferInput& input, HGraphicBufferProducer::queueBuffer_cb _hidl_cb) override { - HGraphicBufferProducer::QueueBufferOutput tOutput; + HGraphicBufferProducer::QueueBufferOutput tOutput{}; BGraphicBufferProducer::QueueBufferInput lInput( 0, false, HAL_DATASPACE_UNKNOWN, ::android::Rect(0, 0, 1, 1), @@ -246,7 +246,7 @@ struct TWGraphicBufferProducer : public BASE { producerControlledByApp, &lOutput); - HGraphicBufferProducer::QueueBufferOutput tOutput; + HGraphicBufferProducer::QueueBufferOutput tOutput{}; std::vector > nhAA; if (!::android::conversion::wrapAs(&tOutput, &nhAA, lOutput)) { LOG(ERROR) << "TWGraphicBufferProducer::connect - " @@ -320,11 +320,11 @@ struct TWGraphicBufferProducer : public BASE { status_t status = mBase->getLastQueuedBuffer( &lOutBuffer, &lOutFence, lOutTransformMatrix); - AnwBuffer tOutBuffer; + AnwBuffer tOutBuffer{}; if (lOutBuffer != nullptr) { ::android::conversion::wrapAs(&tOutBuffer, *lOutBuffer); } - hidl_handle tOutFence; + hidl_handle tOutFence{}; native_handle_t* nh = nullptr; if ((lOutFence == nullptr) || !::android::conversion::wrapAs(&tOutFence, &nh, *lOutFence)) { LOG(ERROR) << "TWGraphicBufferProducer::getLastQueuedBuffer - " @@ -346,7 +346,7 @@ struct TWGraphicBufferProducer : public BASE { ::android::FrameEventHistoryDelta lDelta; mBase->getFrameTimestamps(&lDelta); - HGraphicBufferProducer::FrameEventHistoryDelta tDelta; + HGraphicBufferProducer::FrameEventHistoryDelta tDelta{}; std::vector > nhAA; if (!::android::conversion::wrapAs(&tDelta, &nhAA, lDelta)) { LOG(ERROR) << "TWGraphicBufferProducer::getFrameTimestamps - " @@ -365,7 +365,7 @@ struct TWGraphicBufferProducer : public BASE { } Return getUniqueId(HGraphicBufferProducer::getUniqueId_cb _hidl_cb) override { - uint64_t outId; + uint64_t outId{}; status_t status = mBase->getUniqueId(&outId); _hidl_cb(static_cast(status), outId); return Void();