hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=b229686519fcd904d65bdef15b90c749de74a996

commit b229686519fcd904d65bdef15b90c749de74a996
Author: ChunEon Park <[email protected]>
Date:   Tue Feb 18 20:34:03 2014 +0900

    config - override the paths only those are actually existed.
---
 src/bin/config_data.c | 19 ++++++++++++++-----
 src/bin/main.c        | 38 +++++++++-----------------------------
 2 files changed, 23 insertions(+), 34 deletions(-)

diff --git a/src/bin/config_data.c b/src/bin/config_data.c
index 5ff0380..c6f7899 100644
--- a/src/bin/config_data.c
+++ b/src/bin/config_data.c
@@ -131,6 +131,15 @@ config_load()
         cd = calloc(1, sizeof(config_data));
         g_cd = cd;
 
+        sprintf(buf, "%s/images", elm_app_data_dir_get());
+        config_edc_img_path_set(buf);
+        sprintf(buf, "%s/sounds", elm_app_data_dir_get());
+        config_edc_snd_path_set(buf);
+        sprintf(buf, "%s/fonts", elm_app_data_dir_get());
+        config_edc_fnt_path_set(buf);
+        sprintf(buf, "%s/data", elm_app_data_dir_get());
+        config_edc_data_path_set(buf);
+
         cd->font_size = 1.0f;
         cd->view_scale = 1;
         cd->stats_bar = EINA_TRUE;
@@ -214,11 +223,11 @@ config_init(const char *edc_path, const char 
*edc_img_path,
 
    config_data *cd = config_load();
 
-   if (edc_path) config_edc_path_set(edc_path);
-   if (edc_img_path) config_edc_img_path_set(edc_img_path);
-   if (edc_snd_path) config_edc_snd_path_set(edc_snd_path);
-   if (edc_fnt_path) config_edc_fnt_path_set(edc_fnt_path);
-   if (edc_data_path) config_edc_data_path_set(edc_data_path);
+   if (edc_path[0]) config_edc_path_set(edc_path);
+   if (edc_img_path[0]) config_edc_img_path_set(edc_img_path);
+   if (edc_snd_path[0]) config_edc_snd_path_set(edc_snd_path);
+   if (edc_fnt_path[0]) config_edc_fnt_path_set(edc_fnt_path);
+   if (edc_data_path[0]) config_edc_data_path_set(edc_data_path);
 }
 
 void
diff --git a/src/bin/main.c b/src/bin/main.c
index 4dbfdf9..50f21f0 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -403,10 +403,6 @@ args_dispatch(int argc, char **argv, char *edc_path, char 
*img_path,
               char *snd_path, char *fnt_path, char *data_path)
 {
    Eina_Bool default_edc = EINA_TRUE;
-   Eina_Bool default_img = EINA_TRUE;
-   Eina_Bool default_snd = EINA_TRUE;
-   Eina_Bool default_fnt = EINA_TRUE;
-   Eina_Bool default_data = EINA_TRUE;
 
    //No arguments. set defaults
    if (argc == 1) goto defaults;
@@ -434,45 +430,29 @@ args_dispatch(int argc, char **argv, char *edc_path, char 
*img_path,
         if (argc > (cur_arg + 1))
           {
              if (!strcmp("-id", argv[cur_arg]))
-               {
-                  sprintf(img_path, "%s", argv[cur_arg + 1]);
-                  default_img = EINA_FALSE;
-               }
+               sprintf(img_path, "%s", argv[cur_arg + 1]);
              else if (!strcmp("-sd", argv[cur_arg]))
-               {
-                  sprintf(snd_path, "%s", argv[cur_arg + 1]);
-                  default_snd = EINA_FALSE;
-               }
+               sprintf(snd_path, "%s", argv[cur_arg + 1]);
              else if (!strcmp("-fd", argv[cur_arg]))
-               {
-                  sprintf(fnt_path, "%s", argv[cur_arg + 1]);
-                  default_fnt = EINA_FALSE;
-               }
+               sprintf(fnt_path, "%s", argv[cur_arg + 1]);
              else if (!strcmp("-dd", argv[cur_arg]))
-               {
-                  sprintf(data_path, "%s", argv[cur_arg + 1]);
-                  default_data = EINA_FALSE;
-               }
+               sprintf(data_path, "%s", argv[cur_arg + 1]);
           }
         cur_arg += 2;
      }
 
 defaults:
    if (default_edc) sprintf(edc_path, "%s", PROTO_EDC_PATH);
-   if (default_img) sprintf(img_path, "%s/images", elm_app_data_dir_get());
-   if (default_snd) sprintf(snd_path, "%s/sounds", elm_app_data_dir_get());
-   if (default_fnt) sprintf(fnt_path, "%s/fonts", elm_app_data_dir_get());
-   if (default_data) sprintf(data_path, "%s/data", elm_app_data_dir_get());
 }
 
 static void
 config_data_set(app_data *ad, int argc, char **argv)
 {
-   char edc_path[PATH_MAX];
-   char img_path[PATH_MAX];
-   char snd_path[PATH_MAX];
-   char fnt_path[PATH_MAX];
-   char data_path[PATH_MAX];
+   char edc_path[PATH_MAX] = { 0, };
+   char img_path[PATH_MAX] = { 0, };
+   char snd_path[PATH_MAX] = { 0, };
+   char fnt_path[PATH_MAX] = { 0, };
+   char data_path[PATH_MAX] = { 0, };
 
    args_dispatch(argc, argv, edc_path, img_path, snd_path, fnt_path, 
data_path);
    config_init(edc_path, img_path, snd_path, fnt_path, data_path);

-- 


Reply via email to