Check return value of a bundle_create func 24/54824/2 accepted/tizen/mobile/20151222.085935 accepted/tizen/tv/20151222.085940 accepted/tizen/wearable/20151222.090017 submit/tizen/20151222.051838
authorMyungki Lee <mk5004.lee@samsung.com>
Fri, 18 Dec 2015 05:55:29 +0000 (14:55 +0900)
committerMyungki Lee <mk5004.lee@samsung.com>
Fri, 18 Dec 2015 06:02:22 +0000 (15:02 +0900)
Change-Id: Iced5d409b5a1c024f842e38814463929df1acfdd
Signed-off-by: Myungki Lee <mk5004.lee@samsung.com>
src/bundle.c

index 38fd1ca..31e09d2 100644 (file)
@@ -567,6 +567,7 @@ bundle_decode(const bundle_raw *r, const int data_size)
         * string and computed from the data
         */
        if (strcmp(extract_cksum, compute_cksum) != 0) {
+               free(d_str);
                free(extract_cksum);
                g_free(compute_cksum);
                return NULL;
@@ -576,6 +577,12 @@ bundle_decode(const bundle_raw *r, const int data_size)
 
        /* re-construct bundle */
        b = bundle_create();
+       if (b == NULL) {
+               free(d_str);
+               free(extract_cksum);
+               g_free(compute_cksum);
+               return NULL;
+       }
 
        p_r = (bundle_raw *)d_r;
 
@@ -719,6 +726,11 @@ bundle_decode_raw(const bundle_raw *r, const int data_size)
 
        /* re-construct bundle */
        b = bundle_create();
+       if (b == NULL) {
+               free(extract_cksum);
+               g_free(compute_cksum);
+               return NULL;
+       }
 
        p_r = (bundle_raw *)d_r;