summaryrefslogtreecommitdiff
path: root/src/recorder.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/recorder.c')
-rw-r--r--src/recorder.c44
1 files changed, 20 insertions, 24 deletions
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;
}