- if (_src != NULL) {
- media_uhd_s *_dst = (media_uhd_s*)calloc(1, sizeof(media_uhd_s));
- if (_dst == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
-
- if (STRING_VALID(_src->media_id)) {
- _dst->media_id = strdup(_src->media_id);
- if (_dst->media_id == NULL) {
- media_uhd_destroy((media_uhd_h)_dst);
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->storage_id)) {
- _dst->storage_id = strdup(_src->storage_id);
- if (_dst->storage_id == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->path)) {
- _dst->path = strdup(_src->path);
- if (_dst->path == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->content_id)) {
- _dst->content_id = strdup(_src->content_id);
- if (_dst->content_id == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->content_title)) {
- _dst->content_title = strdup(_src->content_title);
- if (_dst->content_title == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->release_date)) {
- _dst->release_date = strdup(_src->release_date);
- if (_dst->release_date == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- if (STRING_VALID(_src->file_name)) {
- _dst->file_name = strdup(_src->file_name);
- if (_dst->file_name == NULL) {
- media_content_error("OUT_OF_MEMORY(0x%08x)", MEDIA_CONTENT_ERROR_OUT_OF_MEMORY);
- media_uhd_destroy((media_uhd_h)_dst);
- return MEDIA_CONTENT_ERROR_OUT_OF_MEMORY;
- }
- }
-
- _dst->size = _src->size;
- _dst->modified_time = _src->modified_time;
- _dst->played_position = _src->played_position;
- _dst->sub_type = _src->sub_type;
- _dst->played_count = _src->played_count;
- *dst = (media_uhd_h)_dst;
-
- ret = MEDIA_CONTENT_ERROR_NONE;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }