From 6d5ce9daca1f6dd1015872088bc8251f5f88a0fd Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Wed, 24 Aug 2016 17:21:21 +0900 Subject: [PATCH] code refactoring. centralize divergent logics. --- src/lib/build.c | 14 ++++---------- src/lib/enventor_private.h | 1 + src/lib/util.c | 13 ++++++++++++- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/lib/build.c b/src/lib/build.c index c470f9f..6e03862 100644 --- a/src/lib/build.c +++ b/src/lib/build.c @@ -5,6 +5,8 @@ #include #include "enventor_private.h" + + typedef struct builder_s { Eina_Strbuf *strbuf; @@ -146,22 +148,14 @@ build_edc(void) char *cur_dir = ecore_file_realpath("./"); if (!cur_dir) goto err; -#ifdef _WIN32 - if (_chdir(edc_dir)) goto err; -#else - if (chdir(edc_dir)) goto err; -#endif + if (change_cur_dir(edc_dir)) goto err; Ecore_Exe_Flags flags = (ECORE_EXE_PIPE_READ_LINE_BUFFERED | ECORE_EXE_PIPE_READ | ECORE_EXE_PIPE_ERROR_LINE_BUFFERED | ECORE_EXE_PIPE_ERROR); ecore_exe_pipe_run(bd->build_cmd, flags, NULL); -#ifdef _WIN32 - if (_chdir(cur_dir)) goto err; -#else - if (chdir(cur_dir)) goto err; -#endif + if (change_cur_dir(cur_dir)) goto err; err: if (edc_dir) free(edc_dir); diff --git a/src/lib/enventor_private.h b/src/lib/enventor_private.h index dbce81c..28c3e02 100644 --- a/src/lib/enventor_private.h +++ b/src/lib/enventor_private.h @@ -310,6 +310,7 @@ Eina_List *edit_group_list_get(edit_data *ed); /* util */ void mem_fail_msg(void); const char* part_type_str_convert(Edje_Part_Type type); +int change_cur_dir(const char *dir); /* reference */ void ref_init(void); diff --git a/src/lib/util.c b/src/lib/util.c index 43b2358..d676dcb 100644 --- a/src/lib/util.c +++ b/src/lib/util.c @@ -5,7 +5,18 @@ #include #include "enventor_private.h" -void mem_fail_msg(void) +int +change_cur_dir(const char *dir) +{ +#ifdef _WIN32 + return _chdir(dir); +#else + return chdir(dir); +#endif +} + +void +mem_fail_msg(void) { EINA_LOG_ERR("Failed to allocate Memory!"); }