diff options
author | Haesu Gwon <haesu.gwon@samsung.com> | 2016-09-29 14:01:18 +0900 |
---|---|---|
committer | Haesu Gwon <haesu.gwon@samsung.com> | 2016-09-29 15:19:28 +0900 |
commit | dc6c30c147b26af8c134cca48d7a14e8b40705a9 (patch) | |
tree | 6a3c1f8defe09bdabcdc21ff2f5b94e4b5638218 | |
parent | faf79aff580d6e7fabd1304ff8bfed7f6ccc972c (diff) | |
download | recorder-dc6c30c147b26af8c134cca48d7a14e8b40705a9.tar.gz recorder-dc6c30c147b26af8c134cca48d7a14e8b40705a9.tar.bz2 recorder-dc6c30c147b26af8c134cca48d7a14e8b40705a9.zip |
Fix get filename convert issuesubmit/tizen/20160929.072529submit/tizen/20160929.030608accepted/tizen/wearable/20160929.233819accepted/tizen/tv/20160929.233814accepted/tizen/mobile/20160929.233823accepted/tizen/ivi/20160929.233827accepted/tizen/common/20160929.163457
[Version] 0.2.36
[Profile] Common
[Issue Type] Bug fix
[Dependency module] N/A
[Dependency commit] N/A
[Test] [M(T) - Boot=(OK), sdb=(OK), Home=(OK), Touch=(OK), Version=tizen-mobile_20160928.2]
Change-Id: I30d759f3c28b683a37cee757b1d9f3268ca9fea8
Signed-off-by: Haesu Gwon <haesu.gwon@samsung.com>
-rw-r--r-- | packaging/capi-media-recorder.spec | 2 | ||||
-rw-r--r-- | src/recorder.c | 44 | ||||
-rw-r--r-- | test/recorder_test.c | 2 |
3 files changed, 22 insertions, 26 deletions
diff --git a/packaging/capi-media-recorder.spec b/packaging/capi-media-recorder.spec index 3899ba8..a87bc07 100644 --- a/packaging/capi-media-recorder.spec +++ b/packaging/capi-media-recorder.spec @@ -1,6 +1,6 @@ Name: capi-media-recorder Summary: A Recorder API -Version: 0.2.35 +Version: 0.2.36 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/recorder.c b/src/recorder.c index ee89521..b545e8e 100644 --- a/src/recorder.c +++ b/src/recorder.c @@ -22,6 +22,7 @@ #include <sound_manager.h> #include <sound_manager_internal.h> #include <storage.h> +#include <storage-internal.h> #include <muse_recorder.h> #include <muse_recorder_msg.h> #include <muse_core_ipc.h> @@ -1407,27 +1408,6 @@ _ERR_RECORDER_EXIT: } -int _recorder_replace_path(const char *path, char *replace_path) -{ - const char *old_path = "/opt/usr/media"; - - memset(replace_path, 0, RECORDER_FILENAME_MAX); - if (strncmp(path, old_path, strlen(old_path)) == 0) { - snprintf(replace_path, RECORDER_FILENAME_MAX, "%s%s", tzplatform_getenv(TZ_USER_CONTENT), path + strlen(old_path)); - LOGD("replaced path : %s -> %s", path, replace_path); - } else { - snprintf(replace_path, RECORDER_FILENAME_MAX, "%s", path); - } - - if (!(replace_path != NULL && strlen(replace_path) > 0)) { - LOGE("replace failed"); - return RECORDER_ERROR_INVALID_OPERATION; - } - - return RECORDER_ERROR_NONE; -} - - int recorder_create_videorecorder(camera_h camera, recorder_h *recorder) { return _recorder_create_common(recorder, MUSE_RECORDER_TYPE_VIDEO, camera); @@ -1834,7 +1814,7 @@ int recorder_set_filename(recorder_h recorder, const char *filename) muse_recorder_api_e api = MUSE_RECORDER_API_SET_FILENAME; recorder_cli_s *pc = (recorder_cli_s *)recorder; recorder_msg_param param; - char set_filename[RECORDER_FILENAME_MAX]; + char set_filename[RECORDER_FILENAME_MAX] = {0, }; if (!pc || !pc->cb_info) { LOGE("NULL handle"); @@ -1848,7 +1828,13 @@ int recorder_set_filename(recorder_h recorder, const char *filename) LOGD("ENTER"); - _recorder_replace_path(filename, set_filename); + if (storage_get_origin_internal_path(filename, RECORDER_FILENAME_MAX, set_filename) < 0) { + /* Cannot convert. Use original path. */ + strncpy(set_filename, filename, strlen(filename)); + } else { + /* Converted. Use converted path. */ + LOGD("Converted filename : %s -> %s", filename, set_filename); + } RECORDER_MSG_PARAM_SET(param, STRING, set_filename); @@ -1865,6 +1851,7 @@ int recorder_get_filename(recorder_h recorder, char **filename) int ret = RECORDER_ERROR_NONE; muse_recorder_api_e api = MUSE_RECORDER_API_GET_FILENAME; recorder_cli_s *pc = (recorder_cli_s *)recorder; + char compat_filename[RECORDER_FILENAME_MAX] = {0, }; if (!pc || !pc->cb_info) { LOGE("NULL handle"); @@ -1881,7 +1868,16 @@ int recorder_get_filename(recorder_h recorder, char **filename) _recorder_msg_send(api, pc->cb_info, &ret); if (ret == RECORDER_ERROR_NONE) { - *filename = pc->cb_info->get_filename; + if (storage_get_compat_internal_path(pc->cb_info->get_filename, RECORDER_FILENAME_MAX, compat_filename) < 0) { + /* Cannot convert. Use original path. */ + *filename = pc->cb_info->get_filename; + } else { + /* Converted. Use converted path. */ + LOGD("Converted filename : %s -> %s", pc->cb_info->get_filename, compat_filename); + *filename = strdup(compat_filename); + free(pc->cb_info->get_filename); + } + pc->cb_info->get_filename = NULL; } diff --git a/test/recorder_test.c b/test/recorder_test.c index 46360c6..afa19cb 100644 --- a/test/recorder_test.c +++ b/test/recorder_test.c @@ -92,7 +92,7 @@ void *display; #define EXT_AMR "amr" #define EXT_MKV "mkv" -#define TARGET_FILENAME_PATH "/home/owner/content/Sounds/" +#define TARGET_FILENAME_PATH "/opt/usr/home/owner/media/Sounds/" #define IMAGE_CAPTURE_EXIF_PATH TARGET_FILENAME_PATH"exif.raw" #define TARGET_FILENAME_VIDEO TARGET_FILENAME_PATH"test_rec_video.mp4" #define TARGET_FILENAME_AUDIO TARGET_FILENAME_PATH"test_rec_audio.m4a" |