diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c index 6385c3d..b475512 100644 --- a/src/bin/edi_main.c +++ b/src/bin/edi_main.c @@ -411,16 +411,18 @@ _edi_exit(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info } EAPI Evas_Object * -edi_open(const char *path) +edi_open(const char *inputpath) { Evas_Object *win, *vbx, *content, *tb; const char *winname; + char *path; - if (!edi_project_set(path)) + if (!edi_project_set(inputpath)) { fprintf(stderr, "Project path must be a directory\n"); return NULL; } + path = realpath(inputpath, NULL); elm_need_ethumb(); elm_need_efreet(); @@ -451,6 +453,7 @@ edi_open(const char *path) evas_object_resize(win, 560 * elm_config_scale_get(), 420 * elm_config_scale_get()); evas_object_show(win); + free(path); return win; } diff --git a/src/lib/edi.c b/src/lib/edi.c index 8950a49..3c4aec4 100644 --- a/src/lib/edi.c +++ b/src/lib/edi.c @@ -79,7 +79,7 @@ edi_project_set(const char *path) { char *real = NULL; - real = realpath(real, NULL); + real = realpath(path, NULL); if (!_edi_path_isdir(path)) { free(real); @@ -89,7 +89,7 @@ edi_project_set(const char *path) if (_edi_project_path) eina_stringshare_del(_edi_project_path); - _edi_project_path = eina_stringshare_add(path); + _edi_project_path = eina_stringshare_add(real); free(real); return EINA_TRUE; }