diff options
author | Minje Ahn <minje.ahn@samsung.com> | 2019-09-04 17:33:16 +0900 |
---|---|---|
committer | Minje Ahn <minje.ahn@samsung.com> | 2019-09-05 11:51:17 +0900 |
commit | 57c856a3af34b9a79e769af5bfed622c34369532 (patch) | |
tree | 1b280e5b7718a0311169030503873aad498fc21a | |
parent | 9014bddf2b1f7a563d35975b570aa11bfebc9c07 (diff) | |
download | libmedia-service-57c856a3af34b9a79e769af5bfed622c34369532.tar.gz libmedia-service-57c856a3af34b9a79e769af5bfed622c34369532.tar.bz2 libmedia-service-57c856a3af34b9a79e769af5bfed622c34369532.zip |
Change GArray to GPtrArray
Change-Id: Ibf280ac4790f0606a37b80a16ddc13a59c7cd53a
Signed-off-by: Minje Ahn <minje.ahn@samsung.com>
-rwxr-xr-x | src/common/media-svc-storage.c | 47 | ||||
-rwxr-xr-x | src/common/media-svc.c | 14 | ||||
-rwxr-xr-x | src/include/common/media-svc-storage.h | 2 |
3 files changed, 19 insertions, 44 deletions
diff --git a/src/common/media-svc-storage.c b/src/common/media-svc-storage.c index a39ea02..50cc443 100755 --- a/src/common/media-svc-storage.c +++ b/src/common/media-svc-storage.c @@ -150,70 +150,47 @@ int _media_svc_delete_invalid_storage(sqlite3 *handle, uid_t uid) int ret = MS_MEDIA_ERR_NONE; char *sql = NULL; char *storage_id = NULL; - char *thumb_path = NULL; sqlite3_stmt *sql_stmt = NULL; - GArray *storage_list = NULL; + GPtrArray *storage_list = NULL; + int i = 0; sql = sqlite3_mprintf("SELECT storage_id FROM '%q' WHERE validity=0;", MEDIA_SVC_DB_TABLE_STORAGE); ret = _media_svc_sql_prepare_to_step_simple(handle, sql, &sql_stmt); media_svc_retv_if(ret != MS_MEDIA_ERR_NONE, ret); - storage_list = g_array_new(false, false, sizeof(char *)); + storage_list = g_ptr_array_new_with_free_func(g_free); while (sqlite3_step(sql_stmt) == SQLITE_ROW) { storage_id = g_strdup((const char *)sqlite3_column_text(sql_stmt, 0)); if (storage_id != NULL) - g_array_append_val(storage_list, storage_id); - - storage_id = NULL; + g_ptr_array_add(storage_list, storage_id); } SQLITE3_FINALIZE(sql_stmt); - while ((storage_list != NULL) && (storage_list->len > 0)) { - storage_id = g_array_index(storage_list, char *, 0); - storage_list = g_array_remove_index(storage_list, 0); + for (i = 0; i < storage_list->len; i++) { + storage_id = g_ptr_array_index(storage_list, i); ret = __media_svc_delete_thumbnail(handle, storage_id); - if (ret != MS_MEDIA_ERR_NONE) { + if (ret != MS_MEDIA_ERR_NONE) media_svc_error("Fail to remove thumbnail"); - goto ERROR; - } /* remove media before drop table (for clear playlist, and tag table)*/ sql = sqlite3_mprintf("DELETE FROM '%q';DROP TABLE '%q';", storage_id, storage_id); ret = _media_svc_sql_query_direct(sql, uid); SQLITE3_SAFE_FREE(sql); - if (ret != MS_MEDIA_ERR_NONE) { + if (ret != MS_MEDIA_ERR_NONE) media_svc_error("Fail to drop table[%s]", storage_id); - goto ERROR; - } - - SAFE_FREE(storage_id); } /* Update storage, folder table */ sql = sqlite3_mprintf("DELETE FROM %q WHERE validity=0;DELETE FROM %q WHERE validity=0;", MEDIA_SVC_DB_TABLE_STORAGE, MEDIA_SVC_DB_TABLE_FOLDER); - ret = _media_svc_sql_query_direct(sql, uid); SQLITE3_SAFE_FREE(sql); - if (ret != MS_MEDIA_ERR_NONE) { + if (ret != MS_MEDIA_ERR_NONE) media_svc_error("Fail to update storage table"); - goto ERROR; - } - -ERROR: - SAFE_FREE(storage_id); - SAFE_FREE(thumb_path); - - while ((storage_list != NULL) && (storage_list->len > 0)) { - storage_id = g_array_index(storage_list, char *, 0); - storage_list = g_array_remove_index(storage_list, 0); - SAFE_FREE(storage_id); - } - g_array_free(storage_list, false); - storage_list = NULL; + g_ptr_array_free(storage_list, TRUE); return ret; } @@ -282,7 +259,7 @@ int _media_svc_get_storage_uuid(sqlite3 *handle, const char *path, char *storage return ret; } -int _media_svc_get_storage_path(sqlite3 *handle, GArray **storage_path) +int _media_svc_get_storage_path(sqlite3 *handle, GPtrArray **storage_path) { int ret = MS_MEDIA_ERR_NONE; sqlite3_stmt *sql_stmt = NULL; @@ -298,7 +275,7 @@ int _media_svc_get_storage_path(sqlite3 *handle, GArray **storage_path) while (sqlite3_step(sql_stmt) == SQLITE_ROW) { root_path = g_strdup((const char *)sqlite3_column_text(sql_stmt, 0)); - g_array_append_val(*storage_path, root_path); + g_ptr_array_add(*storage_path, root_path); } SQLITE3_FINALIZE(sql_stmt); diff --git a/src/common/media-svc.c b/src/common/media-svc.c index 7f6d928..2ef0f23 100755 --- a/src/common/media-svc.c +++ b/src/common/media-svc.c @@ -672,7 +672,8 @@ static void __media_svc_noti_all_storage(sqlite3 *handle, uid_t uid) { int ret = MS_MEDIA_ERR_NONE; char *root_path = NULL; - GArray *path_list = NULL; + GPtrArray *path_list = NULL; + int i = 0; ms_user_get_internal_root_path(uid, &root_path); ret = _media_svc_publish_dir_noti(MS_MEDIA_ITEM_UPDATE, root_path, NULL, 0); @@ -681,21 +682,18 @@ static void __media_svc_noti_all_storage(sqlite3 *handle, uid_t uid) SAFE_FREE(root_path); - path_list = g_array_new(FALSE, FALSE, sizeof(char *)); + path_list = g_ptr_array_new_with_free_func(g_free); _media_svc_get_storage_path(handle, &path_list); - while (path_list->len != 0) { - root_path = g_array_index(path_list , char *, 0); - g_array_remove_index(path_list, 0); + for (i = 0; i < path_list->len; i++) { + root_path = g_ptr_array_index(path_list, i); ret = _media_svc_publish_dir_noti(MS_MEDIA_ITEM_UPDATE, root_path, NULL, 0); if (ret != MS_MEDIA_ERR_NONE) media_svc_error("Fail to send noti"); - - SAFE_FREE(root_path); } - g_array_free(path_list, false); + g_ptr_array_free(path_list, TRUE); } int media_svc_update_item_meta(sqlite3 *handle, uid_t uid) diff --git a/src/include/common/media-svc-storage.h b/src/include/common/media-svc-storage.h index ccc482b..48f47a2 100755 --- a/src/include/common/media-svc-storage.h +++ b/src/include/common/media-svc-storage.h @@ -30,6 +30,6 @@ int _media_svc_update_storage_path(sqlite3 *handle, const char *storage_id, cons int _media_svc_delete_invalid_storage(sqlite3 *handle, uid_t uid); int _media_svc_update_storage_validity(const char *storage_id, int validity, uid_t uid); int _media_svc_get_storage_uuid(sqlite3 *handle, const char *path, char *storage_id, uid_t uid); -int _media_svc_get_storage_path(sqlite3 *handle, GArray **storage_path); +int _media_svc_get_storage_path(sqlite3 *handle, GPtrArray **storage_path); #endif /*_MEDIA_SVC_STORAGE_H_*/ |