summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHwankyu Jhun <h.jhun@samsung.com>2016-06-14 14:38:32 +0900
committerHwankyu Jhun <h.jhun@samsung.com>2016-06-14 15:53:45 +0900
commite8a1cdcdef1548f8e53a1c7f91a9b2cd9ed165be (patch)
treed13f55231fcac7b56eb3d50b6355f9d6e9e1dd5b
parent1b539a04210f85a6e310e83c4541a1901a4e4bef (diff)
downloadappcore-agent-e8a1cdcdef1548f8e53a1c7f91a9b2cd9ed165be.tar.gz
appcore-agent-e8a1cdcdef1548f8e53a1c7f91a9b2cd9ed165be.tar.bz2
appcore-agent-e8a1cdcdef1548f8e53a1c7f91a9b2cd9ed165be.zip
Change-Id: I6f772ab8ac4b7fedd041c55c799d2bafdd47bfea Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
-rw-r--r--src/appcore-agent.c33
1 files changed, 23 insertions, 10 deletions
diff --git a/src/appcore-agent.c b/src/appcore-agent.c
index 5a5a4f0..f9d019b 100644
--- a/src/appcore-agent.c
+++ b/src/appcore-agent.c
@@ -114,9 +114,7 @@
} while (0)
#define APPID_MAX 256
-#define PKGNAME_MAX 256
-#define PATH_RES "/res"
-#define PATH_LOCALE "/locale"
+#define PATH_LOCALE "locale"
static pid_t _pid;
@@ -877,13 +875,29 @@ static gboolean __init_suspend(gpointer data)
}
#endif
+static int __get_locale_resource_dir(char *locale_dir, int size)
+{
+ const char *res_path;
+
+ res_path = aul_get_app_resource_path();
+ if (res_path == NULL) {
+ _ERR("Failed to get resource path");
+ return -1;
+ }
+
+ snprintf(locale_dir, size, "%s" PATH_LOCALE, res_path);
+ if (access(locale_dir, R_OK) != 0)
+ return -1;
+
+ return 0;
+}
+
EXPORT_API int appcore_agent_init(const struct agent_ops *ops,
int argc, char **argv)
{
int r;
- const char *dirname;
+ char locale_dir[PATH_MAX];
char *app_name = NULL;
- int pid;
if (core.state != 0) {
errno = EALREADY;
@@ -895,15 +909,14 @@ EXPORT_API int appcore_agent_init(const struct agent_ops *ops,
return -1;
}
- pid = getpid();
- r = __get_package_app_name(pid, &app_name);
+ r = __get_package_app_name(getpid(), &app_name);
if (r < 0)
return -1;
- dirname = aul_get_app_root_path();
- SECURE_LOGD("dir : %s", dirname);
+ r = __get_locale_resource_dir(locale_dir, sizeof(locale_dir));
+ SECURE_LOGD("dir : %s", locale_dir);
SECURE_LOGD("app name : %s", app_name);
- r = appcore_set_i18n(app_name, dirname);
+ r = appcore_set_i18n(app_name, locale_dir);
free(app_name);
_retv_if(r == -1, -1);