fix memory leak 38/180138/2 accepted/tizen_5.0_unified accepted/tizen/5.0/unified/20181102.014950 accepted/tizen/unified/20180527.044845 submit/tizen/20180525.071503 submit/tizen_5.0/20181101.000003
authorYoungjae Shin <yj99.shin@samsung.com>
Fri, 25 May 2018 05:37:18 +0000 (14:37 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Fri, 25 May 2018 06:41:49 +0000 (15:41 +0900)
Change-Id: I2f945a7e0834993ef3f047b77da1eed71529827f

email-core/email-storage/email-storage.c

index 7dfec6d..0c357c0 100755 (executable)
@@ -2972,6 +2972,8 @@ FINISH_OFF:
                if (ret == true) {
                        if (result_mail_list)
                                *result_mail_list = mail_list_item_from_tbl;
+                       else
+                               EM_SAFE_FREE(mail_list_item_from_tbl);
                        *result_count = count;
                } else
                        EM_SAFE_FREE(mail_list_item_from_tbl);
@@ -9581,14 +9583,14 @@ INTERNAL_FUNC int emstorage_increase_mail_id(char *multi_user_name, int *mail_id
        if (mail_id)
                *mail_id = latest_mail_id;
 
-#ifdef __FEATURE_USE_SHARED_MUTEX_FOR_GENERATING_MAIL_ID__
-       _unlockshm_mutex(mapped_for_generating_mail_id);
-#endif /* __FEATURE_USE_SHARED_MUTEX_FOR_GENERATING_MAIL_ID__ */
-
        ret = true;
 
 FINISH_OFF:
 
+#ifdef __FEATURE_USE_SHARED_MUTEX_FOR_GENERATING_MAIL_ID__
+               _unlockshm_mutex(mapped_for_generating_mail_id);
+#endif /* __FEATURE_USE_SHARED_MUTEX_FOR_GENERATING_MAIL_ID__ */
+
        if (err_code != NULL)
                *err_code = error;
 
@@ -16819,9 +16821,8 @@ INTERNAL_FUNC int emstorage_query_task(char *multi_user_name,
 
 FINISH_OFF:
 
-       if (err == EMAIL_ERROR_NONE) {
-               if (output_task_list)
-                       *output_task_list = task_item_from_tbl;
+       if (err == EMAIL_ERROR_NONE && output_task_list) {
+               *output_task_list = task_item_from_tbl;
                *output_task_count = count;
        } else {
                if (task_item_from_tbl) {