summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDante Russo <quic_drusso@quicinc.com>2019-06-17 18:56:29 -0700
committerandroid-build-merger <android-build-merger@google.com>2019-06-17 18:56:29 -0700
commitba203a23c000a42c83b33fce957fd0d5e50c5691 (patch)
treedc5bdf9693afbb6b3a431a65efa97ad9b294348a
parente8880447936e06eed80cd06f0f7a71c49a1278b6 (diff)
parentb0ed1f1f3129c342004e9e2253e93e589f245d09 (diff)
downloadgps-ba203a23c000a42c83b33fce957fd0d5e50c5691.tar.gz
Fix few ASAN issues reported am: 411f8f46d3
am: b0ed1f1f31 Change-Id: I4bf0e6d08dd181fa11be155b7370f92ab8712e21
-rw-r--r--core/data-items/DataItemConcreteTypesBase.h2
-rw-r--r--gnss/GnssAdapter.cpp21
2 files changed, 21 insertions, 2 deletions
diff --git a/core/data-items/DataItemConcreteTypesBase.h b/core/data-items/DataItemConcreteTypesBase.h
index 552d46a..a6e68f1 100644
--- a/core/data-items/DataItemConcreteTypesBase.h
+++ b/core/data-items/DataItemConcreteTypesBase.h
@@ -249,7 +249,7 @@ public:
mId(NETWORKINFO_DATA_ITEM_ID) {
memset (&mAllNetworkHandles, NETWORK_HANDLE_UNKNOWN,
sizeof (mAllNetworkHandles));
- mAllNetworkHandles[type] = networkHandle;
+ mAllNetworkHandles[initialType] = networkHandle;
}
virtual ~NetworkInfoDataItemBase() {}
inline virtual DataItemId getId() { return mId; }
diff --git a/gnss/GnssAdapter.cpp b/gnss/GnssAdapter.cpp
index 3563ed0..c3afbf7 100644
--- a/gnss/GnssAdapter.cpp
+++ b/gnss/GnssAdapter.cpp
@@ -995,9 +995,18 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
mConfig(config),
mCount(count),
mIds(ids) {}
+ inline MsgGnssUpdateConfig(const MsgGnssUpdateConfig& obj) :
+ MsgGnssUpdateConfig(obj.mAdapter, obj.mApi, obj.mConfig,
+ new uint32_t[obj.mCount], obj.mCount) {
+ if (mIds != nullptr) {
+ for (int i = 0; i < mCount; ++i) {
+ mIds[i] = obj.mIds[i];
+ }
+ }
+ }
inline virtual ~MsgGnssUpdateConfig()
{
- delete [] mIds;
+ delete[] mIds;
}
inline virtual void proc() const {
@@ -1255,6 +1264,16 @@ GnssAdapter::gnssGetConfigCommand(GnssConfigFlagsMask configMask) {
mConfigMask(configMask),
mIds(ids),
mCount(count) {}
+
+ inline MsgGnssGetConfig(const MsgGnssGetConfig& obj) :
+ MsgGnssGetConfig(obj.mAdapter, obj.mApi, obj.mConfigMask,
+ new uint32_t[obj.mCount], obj.mCount) {
+ if (mIds != nullptr) {
+ for (int i = 0; i < mCount; ++i) {
+ mIds[i] = obj.mIds[i];
+ }
+ }
+ }
inline virtual ~MsgGnssGetConfig()
{
delete[] mIds;