{
int ret = MEDIA_CONTENT_ERROR_NONE;
- if (g_mutex_trylock(&db_mutex)) {
- media_content_info("ref count : %d", ref_count);
-
- if (ref_count == 0) {
- if (db_handle == NULL) {
- ret = __media_content_create_attribute_handle();
- if (ret == MEDIA_CONTENT_ERROR_NONE) {
- ret = media_svc_connect(&db_handle, tzplatform_getuid(TZ_USER_NAME), false);
- ret = _content_error_capi(MEDIA_CONTENT_TYPE, ret);
- if (ret == MEDIA_CONTENT_ERROR_NONE)
- ref_count++;
- else
- __media_content_destroy_attribute_handle();
+ g_mutex_lock(&db_mutex);
+ media_content_info("ref count : %d", ref_count);
+
+ if (ref_count == 0) {
+ if (db_handle == NULL) {
+ ret = __media_content_create_attribute_handle();
+ if (ret == MEDIA_CONTENT_ERROR_NONE) {
+ ret = media_svc_connect(&db_handle, tzplatform_getuid(TZ_USER_NAME), false);
+ ret = _content_error_capi(MEDIA_CONTENT_TYPE, ret);
+ if (ret == MEDIA_CONTENT_ERROR_NONE)
+ ref_count++;
+ else
+ __media_content_destroy_attribute_handle();
- } else {
- media_content_error("Internal DB Connection Error");
- }
} else {
- media_content_error("Wrong DB Connection status");
- ret = MEDIA_CONTENT_ERROR_DB_FAILED;
+ media_content_error("Internal DB Connection Error");
}
} else {
- if (db_handle != NULL) {
- ref_count++;
- } else {
- media_content_error("Wrong DB Handle status");
- ret = MEDIA_CONTENT_ERROR_DB_FAILED;
- }
+ media_content_error("Wrong DB Connection status");
+ ret = MEDIA_CONTENT_ERROR_DB_FAILED;
}
-
- media_content_info("ref count changed to: %d", ref_count);
- g_mutex_unlock(&db_mutex);
} else {
- media_content_error("mutex is NULL");
- ret = MEDIA_CONTENT_ERROR_DB_FAILED;
+ if (db_handle != NULL) {
+ ref_count++;
+ } else {
+ media_content_error("Wrong DB Handle status");
+ ret = MEDIA_CONTENT_ERROR_DB_FAILED;
+ }
}
+ media_content_info("ref count changed to: %d", ref_count);
+ g_mutex_unlock(&db_mutex);
+
return ret;
}
{
int ret = MEDIA_CONTENT_ERROR_NONE;
- if (g_mutex_trylock(&db_mutex)) {
- media_content_debug("ref count : %d", ref_count);
- if (ref_count > 0) {
- if (db_handle != NULL) {
- ref_count--;
- } else {
- media_content_error("Wrong DB Handle status");
- ret = MEDIA_CONTENT_ERROR_DB_FAILED;
- }
+ g_mutex_lock(&db_mutex);
+ media_content_debug("ref count : %d", ref_count);
+ if (ref_count > 0) {
+ if (db_handle != NULL) {
+ ref_count--;
} else {
- media_content_error("DB_FAILED(0x%08x) database is not connected", MEDIA_CONTENT_ERROR_DB_FAILED);
- g_mutex_unlock(&db_mutex);
- return MEDIA_CONTENT_ERROR_DB_FAILED;
+ media_content_error("Wrong DB Handle status");
+ ret = MEDIA_CONTENT_ERROR_DB_FAILED;
}
+ } else {
+ media_content_error("DB_FAILED(0x%08x) database is not connected", MEDIA_CONTENT_ERROR_DB_FAILED);
+ g_mutex_unlock(&db_mutex);
+ return MEDIA_CONTENT_ERROR_DB_FAILED;
+ }
- if (ref_count == 0) {
- if (db_handle != NULL) {
- ret = media_svc_disconnect(db_handle);
- ret = _content_error_capi(MEDIA_CONTENT_TYPE, ret);
- if (ret == MEDIA_CONTENT_ERROR_NONE) {
- ret = __media_content_destroy_attribute_handle();
- db_handle = NULL;
- } else {
- media_content_error("database disconnect fail");
- ref_count++;
- }
+ if (ref_count == 0) {
+ if (db_handle != NULL) {
+ ret = media_svc_disconnect(db_handle);
+ ret = _content_error_capi(MEDIA_CONTENT_TYPE, ret);
+ if (ret == MEDIA_CONTENT_ERROR_NONE) {
+ ret = __media_content_destroy_attribute_handle();
+ db_handle = NULL;
} else {
- media_content_error("Wrong DB Handle status");
- ret = MEDIA_CONTENT_ERROR_DB_FAILED;
+ media_content_error("database disconnect fail");
+ ref_count++;
}
-
- g_mutex_unlock(&db_mutex);
-
- media_content_info("ref count changed to: %d", ref_count);
-
- return ret;
+ } else {
+ media_content_error("Wrong DB Handle status");
+ ret = MEDIA_CONTENT_ERROR_DB_FAILED;
}
g_mutex_unlock(&db_mutex);
- } else {
- media_content_error("mutex is NULL");
- ret = MEDIA_CONTENT_ERROR_INVALID_OPERATION;
+
+ media_content_info("ref count changed to: %d", ref_count);
+
+ return ret;
}
+ g_mutex_unlock(&db_mutex);
+
media_content_info("ref count changed to: %d", ref_count);
return ret;