NULL Check (icd-payload.c)
authoryoungman <yman.jung@samsung.com>
Mon, 21 Dec 2015 10:49:30 +0000 (19:49 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Tue, 22 Dec 2015 08:21:50 +0000 (17:21 +0900)
Change-Id: I853d04feef1bf9b460a86887190c8a3c973651d6
Signed-off-by: youngman <yman.jung@samsung.com>
daemon/icd-ioty.c
daemon/icd-payload.c

index 428b559e9cc07f5e95cb8f6f35280be367c17d15..50c3128eaefe04aec89bbd257e46b65cceebfa77 100644 (file)
@@ -795,12 +795,14 @@ OCDoHandle icd_ioty_observer_start(GVariant *resource, int observe_policy,
                return NULL;
        }
 
-       if (IOTCON_OBSERVE_IGNORE_OUT_OF_ORDER == observe_policy)
+       switch (observe_policy) {
+       case IOTCON_OBSERVE_IGNORE_OUT_OF_ORDER:
                method = OC_REST_OBSERVE;
-       else if (IOTCON_OBSERVE_ACCEPT_OUT_OF_ORDER == observe_policy)
-               method = OC_REST_OBSERVE_ALL;
-       else
+               break;
+       case IOTCON_OBSERVE_ACCEPT_OUT_OF_ORDER:
+       default:
                method = OC_REST_OBSERVE_ALL;
+       }
 
        oic_conn_type = icd_ioty_conn_type_to_oic_conn_type(conn_type);
 
index e2d855127823b7e7dc10bffd1c317e5d418212ff..003566e865ca5b8fc37980bb7174536388bc308f 100644 (file)
@@ -592,6 +592,10 @@ static void _icd_state_value_from_gvariant(OCRepPayload *repr, GVariantIter *ite
 
                } else if (g_variant_is_of_type(var, G_VARIANT_TYPE_STRING)) {
                        str_value = g_variant_get_string(var, NULL);
+                       if (NULL == str_value) {
+                               ERR("g_variant_get_string() Fail");
+                               return;
+                       }
                        if (IC_STR_EQUAL == strcmp(IC_STR_NULL, str_value))
                                OCRepPayloadSetNull(repr, key);
                        else
@@ -652,6 +656,11 @@ OCRepPayload* icd_payload_representation_from_gvariant(GVariant *var)
        cur = repr;
        while (g_variant_iter_loop(children, "v", &child)) {
                cur->next = icd_payload_representation_from_gvariant(child);
+               if (NULL == cur->next) {
+                       ERR("icd_payload_representation_from_gvariant() Fail");
+                       OCRepPayloadDestroy(repr);
+                       return NULL;
+               }
                cur = cur->next;
        }
        return repr;