Fix jira N_SE-35278,35401,35402
authorHyunjun Ko <zzoon.ko@samsung.com>
Sat, 20 Apr 2013 09:06:13 +0000 (18:06 +0900)
committerHyunjun Ko <zzoon.ko@samsung.com>
Sat, 20 Apr 2013 09:06:13 +0000 (18:06 +0900)
packaging/libmedia-service.spec
src/common/media-svc-media.c

index 8bcec9e..90be399 100755 (executable)
@@ -1,6 +1,6 @@
 Name:       libmedia-service
 Summary:    Media information service library for multimedia applications.
-Version: 0.2.39
+Version: 0.2.40
 Release:    1
 Group:      System/Libraries
 License:    Apache License, Version 2.0
index 4c19bc2..a181c61 100755 (executable)
@@ -732,6 +732,7 @@ int _media_svc_get_noti_info(sqlite3 *handle, const char *path, int update_item,
        int ret = MEDIA_INFO_ERROR_NONE;
        sqlite3_stmt *sql_stmt = NULL;
        char *sql = NULL;
+       int is_root_dir = FALSE;
 
        if (item == NULL) {
                media_svc_error("_media_svc_get_noti_info failed");
@@ -750,8 +751,13 @@ int _media_svc_get_noti_info(sqlite3 *handle, const char *path, int update_item,
        ret = _media_svc_sql_prepare_to_step(handle, sql, &sql_stmt);
 
        if (ret != MEDIA_INFO_ERROR_NONE) {
-               media_svc_error("error when _media_svc_get_noti_info. err = [%d]", ret);
-               return ret;
+               if (ret == MEDIA_INFO_ERROR_DATABASE_NO_RECORD && update_item == MS_MEDIA_ITEM_DIRECTORY) {
+                       media_svc_error("This is root directory of media");
+                       is_root_dir = TRUE;
+               } else {
+                       media_svc_error("error when _media_svc_get_noti_info. err = [%d]", ret);
+                       return ret;
+               }
        }
 
        *item = calloc(1, sizeof(media_svc_noti_item));
@@ -769,8 +775,12 @@ int _media_svc_get_noti_info(sqlite3 *handle, const char *path, int update_item,
                if (sqlite3_column_text(sql_stmt, 2))
                        (*item)->mime_type = strdup((const char *)sqlite3_column_text(sql_stmt, 2));
        } else if (update_item == MS_MEDIA_ITEM_DIRECTORY) {
-               if (sqlite3_column_text(sql_stmt, 0))
-                       (*item)->media_uuid = strdup((const char *)sqlite3_column_text(sql_stmt, 0));
+               if (is_root_dir) {
+                               (*item)->media_uuid = NULL;
+               } else {
+                       if (sqlite3_column_text(sql_stmt, 0))
+                               (*item)->media_uuid = strdup((const char *)sqlite3_column_text(sql_stmt, 0));
+               }
        }
 
        SQLITE3_FINALIZE(sql_stmt);