rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3267beaec468dafe089675ef56a73de73dfa3721

commit 3267beaec468dafe089675ef56a73de73dfa3721
Author: Andrii Kroitor <an.kroi...@samsung.com>
Date:   Wed Jul 8 11:13:25 2015 +0300

    project_manager: remove unneccesary mutex from pm_project_open
---
 src/bin/project_manager/project_manager.c | 56 ++++++++++++-------------------
 1 file changed, 21 insertions(+), 35 deletions(-)

diff --git a/src/bin/project_manager/project_manager.c 
b/src/bin/project_manager/project_manager.c
index ec3b673..3764c87 100644
--- a/src/bin/project_manager/project_manager.c
+++ b/src/bin/project_manager/project_manager.c
@@ -623,30 +623,22 @@ Project *
 pm_project_open(const char *path)
 {
    Eet_File *ef;
-   Project *pro = NULL;
+   Project *project;
    char *tmp;
    int tmp_len;
-   struct _Project_Lock
-     {
-       Project *project;
-       Eina_Lock mutex;
-     };
 
    edje_file_cache_flush();
-   struct _Project_Lock *pro_lock = mem_calloc(1, sizeof(struct 
_Project_Lock));
-   eina_lock_new(&pro_lock->mutex);
 
    _project_descriptor_init();
    ef = eet_open(path, EET_FILE_MODE_READ_WRITE);
-   if (!ef)
-     goto error;
+   if (!ef) return NULL;
 
-   pro_lock->project = eet_data_read(ef, eed_project, PROJECT_FILE_KEY);
+   project = eet_data_read(ef, eed_project, PROJECT_FILE_KEY);
    _pm_project_descriptor_shutdown();
    eet_close(ef);
-   if (!pro_lock->project) goto error;
+   if (!project) return NULL;
 
-   pro_lock->project->pro_path = eina_stringshare_add(path);
+   project->pro_path = eina_stringshare_add(path);
 
    /* updating .dev file path */
    tmp = strdup(path);
@@ -654,41 +646,35 @@ pm_project_open(const char *path)
    tmp[tmp_len - 3] = 'd';
    tmp[tmp_len - 2] = 'e';
    tmp[tmp_len - 1] = 'v';
-   eina_stringshare_replace(&pro_lock->project->dev, tmp);
+   eina_stringshare_replace(&project->dev, tmp);
    free(tmp);
    /* updating .edj file path */
    tmp = strdup(path);
    tmp[tmp_len - 3] = 'e';
    tmp[tmp_len - 2] = 'd';
    tmp[tmp_len - 1] = 'j';
-   eina_stringshare_replace(&pro_lock->project->saved_edj, tmp);
+   eina_stringshare_replace(&project->saved_edj, tmp);
    free(tmp);
 
    /* checking for older project versions and upgrading them 
version-by-version */
-   if (pro_lock->project->version < 2) /* upgrade to version 2 */
+   if (project->version < 2) /* upgrade to version 2 */
      {
         WARN(_("Old project version. Project files were updated."));
-        ecore_file_mv(pro_lock->project->dev, pro_lock->project->saved_edj);
-        pro_lock->project->version = 2;
+        ecore_file_mv(project->dev, project->saved_edj);
+        project->version = 2;
      }
    TODO("Add crash recovery prompt here")
-   _project_dev_file_create(pro_lock->project);
-   pro_lock->project->mmap_file = eina_file_open(pro_lock->project->dev, 
false);
-   eina_lock_take(&pro_lock->mutex);
-
-   pro_lock->project->changed = false;
-   pro_lock->project->close_request = false;
-   pro_lock->project->widgets = wm_widgets_list_new(pro_lock->project->dev);
-   pro_lock->project->layouts = wm_layouts_list_new(pro_lock->project->dev);
-   pm_project_meta_data_get(pro_lock->project, &pro_lock->project->name, NULL, 
NULL, NULL, NULL);
-   if (!pro_lock->project->name) pro_lock->project->name = 
eina_stringshare_add(_("No title"));
-   eina_lock_release(&pro_lock->mutex);
-
-error:
-   eina_lock_free(&pro_lock->mutex);
-   pro = pro_lock->project;
-   free(pro_lock);
-   return pro;
+   _project_dev_file_create(project);
+   project->mmap_file = eina_file_open(project->dev, false);
+
+   project->changed = false;
+   project->close_request = false;
+   project->widgets = wm_widgets_list_new(project->dev);
+   project->layouts = wm_layouts_list_new(project->dev);
+   pm_project_meta_data_get(project, &project->name, NULL, NULL, NULL, NULL);
+   if (!project->name) project->name = eina_stringshare_add(_("No title"));
+
+   return project;
 }
 
 void

-- 


Reply via email to