From 22f6c711f8ac0f81de5823e67eef40b299d2eb31 Mon Sep 17 00:00:00 2001 From: Kevin Strasser Date: Wed, 16 May 2018 16:24:30 -0700 Subject: [PATCH] Fix uninitialized variables Initialize member variables found in Klocwork scan. Also, do all initialization in constructor init list. Jira: GSE-1594 Test: Build and boot to graphics on Android Signed-off-by: Kevin Strasser --- common/display/displayplanemanager.cpp | 6 +++++- common/display/displayplanemanager.h | 6 +++--- os/android/gralloc1bufferhandler.cpp | 18 +++++++++++++++++- os/android/iahwc2.cpp | 16 ++++++++++++---- os/android/iahwc2.h | 12 ++++++------ 5 files changed, 43 insertions(+), 15 deletions(-) diff --git a/common/display/displayplanemanager.cpp b/common/display/displayplanemanager.cpp index 4c8b3c8..181c338 100644 --- a/common/display/displayplanemanager.cpp +++ b/common/display/displayplanemanager.cpp @@ -30,8 +30,12 @@ DisplayPlaneManager::DisplayPlaneManager(DisplayPlaneHandler *plane_handler, ResourceManager *resource_manager) : plane_handler_(plane_handler), resource_manager_(resource_manager), + cursor_plane_(nullptr), width_(0), - height_(0) { + height_(0), + total_overlays_(0), + display_transform_(kIdentity), + release_surfaces_(false) { } DisplayPlaneManager::~DisplayPlaneManager() { diff --git a/common/display/displayplanemanager.h b/common/display/displayplanemanager.h index 170117d..ae6aaba 100644 --- a/common/display/displayplanemanager.h +++ b/common/display/displayplanemanager.h @@ -173,9 +173,9 @@ class DisplayPlaneManager { uint32_t width_; uint32_t height_; - uint32_t total_overlays_ = 0; - uint32_t display_transform_ = kIdentity; - bool release_surfaces_ = false; + uint32_t total_overlays_; + uint32_t display_transform_; + bool release_surfaces_; }; } // namespace hwcomposer diff --git a/os/android/gralloc1bufferhandler.cpp b/os/android/gralloc1bufferhandler.cpp index cf334b9..804e4ea 100644 --- a/os/android/gralloc1bufferhandler.cpp +++ b/os/android/gralloc1bufferhandler.cpp @@ -44,7 +44,23 @@ NativeBufferHandler *NativeBufferHandler::CreateInstance(uint32_t fd) { return handler; } -Gralloc1BufferHandler::Gralloc1BufferHandler(uint32_t fd) : fd_(fd) { +Gralloc1BufferHandler::Gralloc1BufferHandler(uint32_t fd) + : fd_(fd), + gralloc_(nullptr), + device_(nullptr), + register_(nullptr), + release_(nullptr), + dimensions_(nullptr), + lock_(nullptr), + unlock_(nullptr), + create_descriptor_(nullptr), + destroy_descriptor_(nullptr), + set_consumer_usage_(nullptr), + set_dimensions_(nullptr), + set_format_(nullptr), + set_producer_usage_(nullptr), + allocate_(nullptr), + set_modifier_(nullptr) { } Gralloc1BufferHandler::~Gralloc1BufferHandler() { diff --git a/os/android/iahwc2.cpp b/os/android/iahwc2.cpp index 51c61c7..e8945ae 100644 --- a/os/android/iahwc2.cpp +++ b/os/android/iahwc2.cpp @@ -282,7 +282,15 @@ HWC2::Error IAHWC2::RegisterCallback(int32_t descriptor, return error; } -IAHWC2::HwcDisplay::HwcDisplay() { +IAHWC2::HwcDisplay::HwcDisplay() + : display_(nullptr), + handle_(0), + type_(HWC2::DisplayType::Invalid), + frame_no_(0), + check_validate_display_(false), + disable_explicit_sync_(false), + enable_nested_display_compose_(false), + scaling_mode_(0) { supported(__func__); } @@ -395,7 +403,7 @@ HWC2::Error IAHWC2::HwcDisplay::RegisterHotPlugCallback( HWC2::Error IAHWC2::HwcDisplay::AcceptDisplayChanges() { supported(__func__); - if (!checkValidateDisplay) { + if (!check_validate_display_) { ALOGV("AcceptChanges failed, not validated"); return HWC2::Error::NotValidated; } @@ -404,7 +412,7 @@ HWC2::Error IAHWC2::HwcDisplay::AcceptDisplayChanges() { l.second.accept_type_change(); // reset the value to false - checkValidateDisplay = false; + check_validate_display_ = false; return HWC2::Error::None; } @@ -839,7 +847,7 @@ HWC2::Error IAHWC2::HwcDisplay::ValidateDisplay(uint32_t *num_types, } } - checkValidateDisplay = true; + check_validate_display_ = true; return HWC2::Error::None; } diff --git a/os/android/iahwc2.h b/os/android/iahwc2.h index 586bdc4..b695b1d 100644 --- a/os/android/iahwc2.h +++ b/os/android/iahwc2.h @@ -197,18 +197,18 @@ class IAHWC2 : public hwc2_device_t { hwcomposer::NativeDisplay *GetDisplay(); private: - hwcomposer::NativeDisplay *display_ = NULL; + hwcomposer::NativeDisplay *display_; hwc2_display_t handle_; HWC2::DisplayType type_; std::map layers_; Hwc2Layer client_layer_; - uint32_t frame_no_ = 0; + uint32_t frame_no_; // True after validateDisplay - bool checkValidateDisplay = false; - bool disable_explicit_sync_ = false; - bool enable_nested_display_compose_ = false; - uint32_t scaling_mode_ = 0; + bool check_validate_display_; + bool disable_explicit_sync_; + bool enable_nested_display_compose_; + uint32_t scaling_mode_; }; static IAHWC2 *toIAHWC2(hwc2_device_t *dev) { -- 2.11.0