summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPyun DoHyun <dh79.pyun@samsung.com>2021-06-15 04:27:02 +0000
committerGerrit Code Review <gerrit@review>2021-06-15 04:27:02 +0000
commit99c852126f1a0ecc0e34bb713e40cc4a95c47b4e (patch)
treecca8b06cff483b0b2f22f6464c879430bf03dd4c
parent50f94b57cd646f68a29046a37bb203d4eb700efc (diff)
parent079dcc8924d944f9575e5019f5609c0ff7aca3ed (diff)
downloaduser-awareness-99c852126f1a0ecc0e34bb713e40cc4a95c47b4e.tar.gz
user-awareness-99c852126f1a0ecc0e34bb713e40cc4a95c47b4e.tar.bz2
user-awareness-99c852126f1a0ecc0e34bb713e40cc4a95c47b4e.zip
Merge "Fix dereferencing before NULL check issue." into tizensubmit/tizen/20210615.073530accepted/tizen/unified/20210616.132532
-rwxr-xr-xsrc/user-awareness-payload.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/user-awareness-payload.c b/src/user-awareness-payload.c
index d7f66f7..ac116b6 100755
--- a/src/user-awareness-payload.c
+++ b/src/user-awareness-payload.c
@@ -419,19 +419,25 @@ ua_payload_info_s* _ua_payload_clone(ua_payload_info_s *org_payload)
payload->extension_value2 = org_payload->extension_value2;
payload->device_uid_len = org_payload->device_uid_len;
- payload->device_uid = g_memdup(org_payload->device_uid, org_payload->device_uid_len);
- if (!payload->device_uid && org_payload->device_uid) {
- UA_ERR("g_malloc0 failed");
- _ua_free_ua_payload_info_s(payload);
- return NULL;
+
+ if (org_payload->device_uid) {
+ payload->device_uid = g_memdup(org_payload->device_uid, org_payload->device_uid_len);
+ if (!payload->device_uid) {
+ UA_ERR("g_memdup failed");
+ _ua_free_ua_payload_info_s(payload);
+ return NULL;
+ }
}
user_data_len = UA_BLE_PAYLOAD_DEVICE_UID_MAX_LEN - 1 - org_payload->device_uid_len;
- payload->user_data = g_memdup(org_payload->user_data, user_data_len);
- if (!payload->user_data && org_payload->user_data) {
- UA_ERR("g_malloc0 failed");
- _ua_free_ua_payload_info_s(payload);
- return NULL;
+
+ if (org_payload->user_data) {
+ payload->user_data = g_memdup(org_payload->user_data, user_data_len);
+ if (!payload->user_data) {
+ UA_ERR("g_memdup failed");
+ _ua_free_ua_payload_info_s(payload);
+ return NULL;
+ }
}
FUNC_EXIT;