rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=636ea9bed1664c23972391b2e4291a05153418dc

commit 636ea9bed1664c23972391b2e4291a05153418dc
Author: Vyacheslav Reutskiy <v.reuts...@samsung.com>
Date:   Fri Nov 25 11:56:19 2016 +0200

    project_manager: don't save the full path to project env
    
    This need for avoid errors in case when project is moved after save.
    Now we save only project name and generate all paths on project open.
    
    @fix
    
    Change-Id: Ib7fc46a7063de7127ebba0b7712e4eb864682ee8
---
 src/bin/project_manager/project_manager2.c | 25 ++++++++++++++++++-------
 1 file changed, 18 insertions(+), 7 deletions(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 26d856c..6e7d139 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -99,9 +99,7 @@ _project_descriptor_init(Project_Process_Data *ppd)
    ppd->eed_project = eet_data_descriptor_stream_new(&eddc);
 
    EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, "version", 
version, EET_T_INT);
-   EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, "dev", dev, 
EET_T_STRING);
-   EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, "saved_edj", 
saved_edj, EET_T_STRING);
-   EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, "develop_path", 
develop_path, EET_T_STRING);
+   EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, "name", name, 
EET_T_STRING);
    EET_DATA_DESCRIPTOR_ADD_BASIC (ppd->eed_project, Project, 
"release_options", release_options, EET_T_STRING);
 }
 
@@ -586,7 +584,7 @@ _project_close_internal(Project *project)
 static PM_Project_Result
 _project_open_internal(Project_Process_Data *ppd)
 {
-   char cmd[PATH_MAX];
+   char buf[PATH_MAX];
    char *file_dir;
 
 #ifdef _WIN32
@@ -639,6 +637,20 @@ _project_open_internal(Project_Process_Data *ppd)
    ppd->project->pro_path = eina_stringshare_add(ppd->path);
    ppd->project->pro_fd = pro_fd;
 
+   file_dir = ecore_file_dir_get(ppd->path);
+   ppd->project->dev = eina_stringshare_printf("%s/%s.dev", file_dir, 
ppd->name);
+   ppd->project->saved_edj = eina_stringshare_printf("%s/%s.edj", file_dir, 
ppd->name);
+   ppd->project->develop_path = eina_stringshare_printf("%s/develop", 
file_dir);
+
+   snprintf(buf, sizeof(buf), "%s/images", ppd->project->develop_path);
+   ecore_file_mkdir(buf);
+   snprintf(buf, sizeof(buf), "%s/sounds", ppd->project->develop_path);
+   ecore_file_mkdir(buf);
+   snprintf(buf, sizeof(buf), "%s/fonts", ppd->project->develop_path);
+   ecore_file_mkdir(buf);
+
+
+
    /* updating .dev file path */
    tmp = strdup(ppd->path);
    tmp_len = strlen(tmp);
@@ -724,11 +736,10 @@ _project_open_internal(Project_Process_Data *ppd)
 
 
 
/******************************************************************************/
-   file_dir = ecore_file_dir_get(ppd->path);
-   snprintf(cmd, sizeof(cmd),
+   snprintf(buf, sizeof(buf),
             "%s --edj %s --path %s/develop", ap.path.exporter, 
ppd->project->saved_edj, file_dir);
 
-   ecore_exe_pipe_run(cmd, FLAGS, NULL);
+   ecore_exe_pipe_run(buf, FLAGS, NULL);
 
    ppd->data_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, 
_exe_output_handler, ppd);
    ppd->del_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, 
_exporter_finish_handler, ppd);

-- 


Reply via email to