From 01e7982ee45e4ffdb54324807f3a6e39c4353d38 Mon Sep 17 00:00:00 2001 From: Minje Ahn Date: Thu, 4 Apr 2024 16:36:06 +0900 Subject: [PATCH] Remove unnecessary comparison PVR timeline is same with modified_time. Also, for the same path, the folder_id in the folder table and media table cannot be different. Change-Id: I72b1d2110b0dfce15c6d3535269163fce1706496 Signed-off-by: Minje Ahn --- packaging/media-server.spec | 2 +- src/common/media-common-db-svc.c | 45 +++++++--------------------------------- 2 files changed, 9 insertions(+), 38 deletions(-) diff --git a/packaging/media-server.spec b/packaging/media-server.spec index 0ea7b84..6862a5c 100644 --- a/packaging/media-server.spec +++ b/packaging/media-server.spec @@ -1,6 +1,6 @@ Name: media-server Summary: A server for media content management -Version: 0.5.6 +Version: 0.5.7 Release: 0 Group: Multimedia/Service License: Apache-2.0 diff --git a/src/common/media-common-db-svc.c b/src/common/media-common-db-svc.c index 17de0bd..e55c1bc 100644 --- a/src/common/media-common-db-svc.c +++ b/src/common/media-common-db-svc.c @@ -207,50 +207,25 @@ static int __ms_check_item_exist(sqlite3 *handle, const char *storage_id, const #ifdef _USE_TVPD_MODE MS_DBG_RETVM_IF(!MS_STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL"); - sql = sqlite3_mprintf("SELECT media_modified_time, media_size, media_type, media_timeline,folder_id FROM '%q' WHERE media_path='%q'", storage_id, path); + sql = sqlite3_mprintf("SELECT media_modified_time, media_size FROM '%q' WHERE media_path='%q'", storage_id, path); #else sql = sqlite3_mprintf("SELECT media_modified_time, media_size FROM media WHERE media_path='%q'", path); #endif ret = media_db_get_result(handle, sql, &sql_stmt); - if (ret != MS_MEDIA_ERR_NONE) { - MS_DBG_ERR("Error when media_db_get_result. err = [%d]", ret); - return ret; - } + MS_DBG_RETVM_IF(ret != MS_MEDIA_ERR_NONE, ret, "Error when media_db_get_result. err = [%d]", ret); if (sqlite3_step(sql_stmt) != SQLITE_ROW) { ret = MS_MEDIA_ERR_DB_NO_RECORD; } else { modified_time = (int)sqlite3_column_int(sql_stmt, 0); file_size = (unsigned long long)sqlite3_column_int64(sql_stmt, 1); -#ifdef _USE_TVPD_MODE - if (sqlite3_column_int(sql_stmt, 2) == MS_MEDIA_TYPE_PVR) - modified_time = (int)sqlite3_column_int(sql_stmt, 3); -#endif + if (stat(path, &st) == 0) { - if ((st.st_mtime != modified_time) || (st.st_size != file_size)) { + if ((st.st_mtime != modified_time) || (st.st_size != file_size)) *modified = true; - } else { + else *modified = false; -#ifdef _USE_TVPD_MODE - char *folder_id_media = g_strdup_printf("%lld", sqlite3_column_int64(sql_stmt, 4)); - char *folder_id_folder = NULL; - - char *folder_path = g_path_get_dirname(path); - ret = ms_get_folder_id(handle, storage_id, folder_path, &folder_id_folder); - g_free(folder_path); - if(ret == MS_MEDIA_ERR_NONE) { - if (g_strcmp0(folder_id_media, folder_id_folder) == 0) - *modified = false; - else - *modified = true; - } else - *modified = true; - - g_free(folder_id_media); - g_free(folder_id_folder); -#endif - } } } @@ -290,14 +265,12 @@ int ms_validity_change_all_items(sqlite3 *handle, const char *storage_id, bool v { int ret = MS_MEDIA_ERR_NONE; -#ifdef _USE_TVPD_MODE MS_DBG_RETVM_IF(!MS_STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL"); - +#ifdef _USE_TVPD_MODE char *sql = sqlite3_mprintf("UPDATE '%q' SET validity=%d;", storage_id, validity); #else char *sql = sqlite3_mprintf("UPDATE media SET validity=%d WHERE storage_uuid=%Q;", validity, storage_id); #endif - ret = media_db_update_db_direct(sql, uid); MS_SQL_SAFE_FREE(sql); @@ -323,11 +296,10 @@ int ms_delete_invalid_items(sqlite3 *handle, const char *storage_id, uid_t uid) GPtrArray *thumb_list = NULL; char *path = NULL; int i = 0; - thumb_list = g_ptr_array_new_with_free_func(g_free); -#ifdef _USE_TVPD_MODE - MS_DBG_RETVM_IF(!MS_STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL"); + MS_DBG_RETVM_IF(!MS_STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL"); +#ifdef _USE_TVPD_MODE char *sql = sqlite3_mprintf("SELECT media_thumbnail_path FROM '%q' WHERE validity IN (%d, %d) AND media_thumbnail_path IS NOT NULL", storage_id, MS_INVALID, MS_SCANNING); #else char *sql = sqlite3_mprintf("SELECT media_thumbnail_path FROM media WHERE validity IN (%d, %d) AND media_thumbnail_path IS NOT NULL AND storage_uuid=%Q", MS_INVALID, MS_SCANNING, storage_id); @@ -552,7 +524,6 @@ int ms_get_folder_id(sqlite3 *handle, const char *storage_id, const char *path, MS_DBG_RETVM_IF(path == NULL, MS_MEDIA_ERR_INVALID_PARAMETER, "path is NULL"); #ifdef _USE_TVPD_MODE MS_DBG_RETVM_IF(storage_id == NULL, MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL"); - sql = sqlite3_mprintf("SELECT folder_id FROM folder WHERE (storage_uuid='%q' AND folder_path='%q')", storage_id, path); #else sql = sqlite3_mprintf("SELECT folder_id FROM folder WHERE folder_path=%Q", path); -- 2.7.4