[Non-ACR][email-service][coverity fix] 35/200135/2 accepted/tizen/unified/20190219.154022 submit/tizen/20190219.120244
authorSameer Prakash Pradhan <sp.pradhan@samsung.com>
Tue, 19 Feb 2019 11:29:45 +0000 (16:59 +0530)
committerSameer Prakash Pradhan <sp.pradhan@samsung.com>
Tue, 19 Feb 2019 11:44:57 +0000 (17:14 +0530)
Signed-off-by: Sameer Prakash Pradhan <sp.pradhan@samsung.com>
Change-Id: I33d2b14e4ff2979f8f4660e09b1b1b780f666b5a

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

index 83b4e80..080c58e 100755 (executable)
@@ -1596,27 +1596,65 @@ static void *_emstorage_open_once(char *multi_user_name, int *err_code)
 
                memset(buf, 0x00, sizeof(buf));
                SNPRINTF(buf, sizeof(buf), "%s%s", prefix_path, EMAIL_PATH);
-               mkdir(buf, DIRECTORY_PERMISSION);
+               if (mkdir(buf, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed [%s]", buf);
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
 
                memset(buf, 0x00, sizeof(buf));
                SNPRINTF(buf, sizeof(buf), "%s%s", prefix_path, MAIL_HOME);
-               mkdir(buf, DIRECTORY_PERMISSION);
+               if (mkdir(buf, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed [%s]", buf);
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
 
                memset(buf, 0x00, sizeof(buf));
                SNPRINTF(buf, sizeof(buf), "%s%s", prefix_path, MAIL_TEMP);
-               mkdir(buf, DIRECTORY_PERMISSION);
+               if (mkdir(buf, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed [%s]", buf);
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
 
                _delete_temp_file(buf);
                EM_SAFE_FREE(prefix_path);
        } else {
-               if (mkdir(DATA_PATH, DIRECTORY_PERMISSION) != 0)
-                       EM_DEBUG_EXCEPTION("Fail to create the directory \n");
-               if (mkdir(EMAIL_PATH, DIRECTORY_PERMISSION) != 0)
-                       EM_DEBUG_EXCEPTION("Fail to create the directory \n");
-               if (mkdir(MAIL_HOME, DIRECTORY_PERMISSION) != 0)
-                       EM_DEBUG_EXCEPTION("Fail to create the directory \n");
-               if (mkdir(MAIL_TEMP, DIRECTORY_PERMISSION) != 0)
-                       EM_DEBUG_EXCEPTION("Fail to create the directory \n");
+               if (mkdir(DATA_PATH, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed ");
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
+               if (mkdir(EMAIL_PATH, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed ");
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
+               if (mkdir(MAIL_HOME, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed ");
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
+               if (mkdir(MAIL_TEMP, DIRECTORY_PERMISSION) != 0) {
+                       EM_DEBUG_EXCEPTION(" mkdir failed ");
+                       error = EMAIL_ERROR_SYSTEM_FAILURE;
+                       if (errno == 28)
+                               error = EMAIL_ERROR_OUT_OF_MEMORY;
+                       goto FINISH_OFF;
+               }
 
                _delete_temp_file(MAIL_TEMP);
        }
@@ -11529,10 +11567,20 @@ INTERNAL_FUNC int emstorage_clear_mail_data(char *multi_user_name, int transacti
                goto FINISH_OFF;
        }
 
-       if (mkdir(MAIL_HOME, DIRECTORY_PERMISSION) != 0)
-               EM_DEBUG_EXCEPTION("Fail to create the directory \n");
-       if (mkdir(MAIL_TEMP, DIRECTORY_PERMISSION) != 0)
-               EM_DEBUG_EXCEPTION("Fail to create the directory \n");
+       if (mkdir(MAIL_HOME, DIRECTORY_PERMISSION) != 0) {
+               EM_DEBUG_EXCEPTION(" mkdir failed ");
+               error = EMAIL_ERROR_SYSTEM_FAILURE;
+               if (errno == 28)
+                       error = EMAIL_ERROR_OUT_OF_MEMORY;
+               goto FINISH_OFF;
+       }
+       if (mkdir(MAIL_TEMP, DIRECTORY_PERMISSION) != 0) {
+               EM_DEBUG_EXCEPTION(" mkdir failed ");
+               error = EMAIL_ERROR_SYSTEM_FAILURE;
+               if (errno == 28)
+                       error = EMAIL_ERROR_OUT_OF_MEMORY;
+               goto FINISH_OFF;
+       }
        if (chmod(MAIL_TEMP, 0777) != 0)
                EM_DEBUG_EXCEPTION("Fail to change the permission \n");