summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSameer Prakash Pradhan <sp.pradhan@samsung.com>2019-02-19 16:59:45 +0530
committerSameer Prakash Pradhan <sp.pradhan@samsung.com>2019-02-19 17:14:57 +0530
commit98d5a759e9b6aae81a5ae08b749add5d127ed935 (patch)
treea698c30407ce7fcfec97fba1fc2618b23ba4b04c
parent999c4fe067fcda1327c65f0b324ea21f21a808dd (diff)
downloademail-service-98d5a759e9b6aae81a5ae08b749add5d127ed935.tar.gz
email-service-98d5a759e9b6aae81a5ae08b749add5d127ed935.tar.bz2
email-service-98d5a759e9b6aae81a5ae08b749add5d127ed935.zip
Signed-off-by: Sameer Prakash Pradhan <sp.pradhan@samsung.com> Change-Id: I33d2b14e4ff2979f8f4660e09b1b1b780f666b5a
-rwxr-xr-xemail-core/email-storage/email-storage.c78
1 files changed, 63 insertions, 15 deletions
diff --git a/email-core/email-storage/email-storage.c b/email-core/email-storage/email-storage.c
index 83b4e80..080c58e 100755
--- a/email-core/email-storage/email-storage.c
+++ b/email-core/email-storage/email-storage.c
@@ -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");