Merge "coverity check: to make code more efficient and robust" into main
diff --git a/modules/sensors/dynamic_sensor/ConnectionDetector.cpp b/modules/sensors/dynamic_sensor/ConnectionDetector.cpp
index 99dab5b..1df002c 100644
--- a/modules/sensors/dynamic_sensor/ConnectionDetector.cpp
+++ b/modules/sensors/dynamic_sensor/ConnectionDetector.cpp
@@ -47,7 +47,11 @@
}
};
- ::bind(mListenFd, (struct sockaddr*)&serverAddress, sizeof(serverAddress));
+ if (::bind(mListenFd, (struct sockaddr*)&serverAddress, sizeof(serverAddress)) != NO_ERROR) {
+ ALOGE("Cannot bind to port %d", port);
+ mListenFd = -1;
+ return;
+ }
if (::listen(mListenFd, 0) != NO_ERROR) {
ALOGE("Cannot listen to port %d", port);
mListenFd = -1;
@@ -196,12 +200,12 @@
bool FileConnectionDetector::readInotifyData() {
union {
struct inotify_event ev;
- char raw[sizeof(inotify_event) + NAME_MAX + 1];
+ char raw[sizeof(inotify_event) + NAME_MAX + 1] = {0};
} buffer;
bool ret = true;
while (true) {
- ssize_t len = ::read(mInotifyFd, &buffer, sizeof(buffer));
+ ssize_t len = ::read(mInotifyFd, &buffer, sizeof(buffer) - sizeof(char));
if (len == -1 && errno == EAGAIN) {
// no more data
break;
diff --git a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
index 6321020..b11ba15 100644
--- a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
+++ b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
@@ -117,7 +117,7 @@
HidReport report(reportType, flag, top, mLocal);
mReport.push_back(report);
std::shared_ptr<HidTreeNode> node(new HidReportNode(mCurrent, report));
- mCurrent->addChild(node);
+ mCurrent->addChild(std::move(node));
break;
}
default:
diff --git a/modules/sensors/dynamic_sensor/HidUtils/HidReport.cpp b/modules/sensors/dynamic_sensor/HidUtils/HidReport.cpp
index 9b2b78b..2b9b4cb 100644
--- a/modules/sensors/dynamic_sensor/HidUtils/HidReport.cpp
+++ b/modules/sensors/dynamic_sensor/HidUtils/HidReport.cpp
@@ -22,7 +22,8 @@
namespace HidUtil {
HidReport::HidReport(uint32_t type, uint32_t data,
const HidGlobal &global, const HidLocal &local)
- : mReportType(type),
+ : mIsCollapsed(false),
+ mReportType(type),
mFlag(data),
mUsagePage(global.usagePage.get(0)), // default value 0
mUsage(local.getUsage(0)),