rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=34e5efcaf846e6852d1378488c0dbfc79090039a

commit 34e5efcaf846e6852d1378488c0dbfc79090039a
Author: Vyacheslav Reutskiy <[email protected]>
Date:   Wed Jul 20 18:42:04 2016 +0300

    Revert "project_manager: import edj file by coping groups"
    
    This reverts commit 84c2d417e66518dc2329dbe394c0f60bf52d7e8c.
    
    Coping group by Change is wrong way for import it very slowly.
    
    Change-Id: Ie55fd097234dfef57e5b8592e8a3a0ca0900f478
---
 src/bin/project_manager/project_manager.c | 73 ++++---------------------------
 1 file changed, 8 insertions(+), 65 deletions(-)

diff --git a/src/bin/project_manager/project_manager.c 
b/src/bin/project_manager/project_manager.c
index 1dc91ce..97cb604 100644
--- a/src/bin/project_manager/project_manager.c
+++ b/src/bin/project_manager/project_manager.c
@@ -370,13 +370,18 @@ _copy_meta_data_to_pro(void)
 }
 
 static Eina_Bool
-_project_edj_file_copy(const char *src, const char *dst)
+_project_edj_file_copy(void)
 {
+   Eina_Stringshare *src, *dst;
    Eina_Bool result;
 
+   src = eina_stringshare_ref(worker.edj);
+   dst = eina_stringshare_ref(worker.project->saved_edj);
    result = ecore_file_cp(src, dst);
 
    DBG("Copy the .edj file to project folder.");
+   eina_stringshare_del(src);
+   eina_stringshare_del(dst);
    return result;
 }
 
@@ -462,12 +467,6 @@ _project_import_edj(void *data,
                     Eina_Thread *thread __UNUSED__)
 {
    Eina_Bool send_end = (data) ? (*(Eina_Bool *)data) : true;
-   Eina_Tmpstr *tmp_dirname;
-   Eina_Stringshare *dummy_source, *edc, *edj, *cmd;
-   Ecore_Exe *exe_cmd;
-   pid_t exe_pid;
-   int edje_cc_res = 0, waitpid_res = 0;
-   FILE *f;
 
    PROGRESS_SEND(_("Start import '%s' file as new project"), worker.edj);
    PROGRESS_SEND(_("Creating a specifiec file and folders"));
@@ -483,71 +482,15 @@ _project_import_edj(void *data,
         END_SEND(PM_PROJECT_LOCKED);
         return NULL;
      }
-   /* create a edj file with dummy group */
-   eina_file_mkdtemp("eflete_build_XXXXXX", &tmp_dirname);
-   edc = eina_stringshare_printf("%s/out.edc", tmp_dirname);
-   edj = eina_stringshare_printf("%s/out.edj", tmp_dirname);
-   cmd = eina_stringshare_printf("edje_cc %s %s", edc, edj);
-   dummy_source = eina_stringshare_add("collections { group { name: 
\""EFLETE_INTERNAL_GROUP_NAME"\";} }");
-
-   f = fopen(edc, "w");
-   if (!f)
-     {
-        ERR("Could't open file '%s'", edc);
-        return NULL;
-     }
-   fputs(dummy_source, f);
-   fclose(f);
-
-   THREAD_TESTCANCEL;
-   exe_cmd = ecore_exe_pipe_run(cmd, ECORE_EXE_NONE, NULL);
-   exe_pid = ecore_exe_pid_get(exe_cmd);
-   THREAD_TESTCANCEL;
-   waitpid_res = waitpid(exe_pid, &edje_cc_res, 0);
-
-   if ((waitpid_res == -1) ||
-       (WIFEXITED(edje_cc_res) && (WEXITSTATUS(edje_cc_res) != 0 )))
-     {
-        END_SEND(PM_PROJECT_ERROR);
-        return NULL;
-     }
 
    PROGRESS_SEND(_("Import processing"));
-   _project_edj_file_copy(edj, worker.project->saved_edj);
+   _project_edj_file_copy();
    _copy_meta_data_to_pro();
+   _project_special_group_add(worker.project);
    _project_dummy_image_add(worker.project);
    _project_open_internal(worker.project);
    THREAD_TESTCANCEL;
 
-   Eina_List *l;
-   Eina_Stringshare *group;
-   EINA_LIST_FOREACH(worker.widgets, l, group)
-     {
-        if ((group[0] == 'c') && (group[1] == 'p') && (group[2] == '*') && 
(group[3] == '*') && (group[4] == '*'))
-          {
-             char **arr = eina_str_split(group, "***", 0);
-             you_shall_not_pass_editor_signals(NULL);
-             if (!editor_group_copy(worker.project->global_object, arr[1], 
arr[2]))
-               abort();
-             you_shall_pass_editor_signals(NULL);
-             /* reload file after group add */
-             pm_dev_file_reload(worker.project);
-             /* add group to project structures */
-             THREAD_CONTEXT_SWITCH_BEGIN;
-             gm_group_add(worker.project, arr[2], false);
-             THREAD_CONTEXT_SWITCH_END;
-
-             free(arr[0]);
-             free(arr);
-             continue;
-          }
-        pm_project_group_import(worker.project, worker.edj, group);
-     }
-
-   ecore_file_recursive_rm(tmp_dirname);
-   eina_tmpstr_del(tmp_dirname);
-
-   ecore_file_cp(worker.project->dev, worker.project->saved_edj);
    PROGRESS_SEND(_("Import finished. Project '%s' created"), 
worker.project->name);
    if (send_end) END_SEND(PM_PROJECT_SUCCESS);
 

-- 


Reply via email to