Fix HANDLE_LEAK_SQLITE_STATEMENT issue 02/168402/1 submit/tizen_4.0/20180130.011252
authorJiyong Min <jiyong.min@samsung.com>
Fri, 26 Jan 2018 08:05:43 +0000 (17:05 +0900)
committerJiyong Min <jiyong.min@samsung.com>
Fri, 26 Jan 2018 08:07:29 +0000 (17:07 +0900)
Change-Id: I4c3a50382a3ad035b6081c5911c085fb16cadcc8

packaging/capi-media-controller.spec
src/media_controller_db.c

index 0e837574eb71a1864698c817ef27a68886ebe521..fab265b13d0bd4e0c3119b2674b312b1b13d6e6e 100755 (executable)
@@ -1,6 +1,6 @@
 Name:       capi-media-controller
 Summary:    A media controller library in Tizen Native API
-Version:    0.1.51
+Version:    0.1.52
 Release:    1
 Group:      Multimedia/API
 License:    Apache-2.0
index 03b66699fc5155f2aa694bb25357f462aaa983e6..c366983a5e9b082404a37a4dc201b65632a94e4f 100755 (executable)
@@ -400,7 +400,12 @@ int mc_db_get_metadata_info(void *handle, const char *server_name, mc_metadata_h
                return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
        } else {
                _metadata = (media_controller_metadata_s *)calloc(1, sizeof(media_controller_metadata_s));
-               mc_retvm_if(_metadata == NULL, MEDIA_CONTROLLER_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
+               if (_metadata == NULL) {
+                       mc_error("OUT_OF_MEMORY");
+                       SQLITE3_FINALIZE(stmt);
+                       SQLITE3_SAFE_FREE(sql_str);
+                       return MEDIA_CONTROLLER_ERROR_OUT_OF_MEMORY;
+               }
 
                if (MC_STRING_VALID((const char *)sqlite3_column_text(stmt, MC_SERVER_FIELD_TITLE)))
                        _metadata->title = strdup((const char *)sqlite3_column_text(stmt, MC_SERVER_FIELD_TITLE));