prevent dereferencing of NULL 18/179418/1 accepted/tizen/unified/20180518.060651 submit/tizen/20180518.014325
authorYoungjae Shin <yj99.shin@samsung.com>
Fri, 18 May 2018 01:38:32 +0000 (10:38 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Fri, 18 May 2018 01:38:32 +0000 (10:38 +0900)
Change-Id: I4f9e34fafd95b4175399aa4198ebf91ac2e97a72

email-core/email-core-mailbox-sync.c

index 2aa22d6..9aa69f6 100755 (executable)
@@ -3531,8 +3531,10 @@ INTERNAL_FUNC int emcore_sync_mail_from_client_to_server(char *multi_user_name,
 
                        if (read_size != data_size) {
                                /* read fail. */
-                               EM_SAFE_FREE(data);
                                EM_DEBUG_EXCEPTION("Read from file failed");
+                               INIT(&str_data, mail_string, NULL, read_size);
+                       } else {
+                               INIT(&str_data, mail_string, data, read_size);
                        }
                        sent_size += read_size;
 
@@ -3571,12 +3573,13 @@ INTERNAL_FUNC int emcore_sync_mail_from_client_to_server(char *multi_user_name,
 
                        if (read_size != data_size) {
                                /* read fail. */
-                               EM_SAFE_FREE(data);
                                EM_DEBUG_EXCEPTION("Read from file failed");
+                               INIT(&str_data, mail_string, NULL, read_size);
+                       } else {
+                               INIT(&str_data, mail_string, data, read_size);
                        }
                        sent_size += read_size;
 
-                       INIT(&str_data, mail_string, data, read_size);
                        if (!mail_append_message(stream, long_enc_path, &str_data)) {
                                EM_DEBUG_EXCEPTION("mail_append  failed -");
                                err = EMAIL_ERROR_IMAP4_APPEND_FAILURE;