From 32fcdf12d19a4729e49f8ab9eedbe592b3f5c3c1 Mon Sep 17 00:00:00 2001 From: Sang-Hun Chung Date: Thu, 10 Jan 2013 20:33:47 +0900 Subject: [PATCH] prevent fix --- email-core/email-core-mime.c | 2 +- email-core/email-core-utils.c | 34 +++++++++++++++++++++------------- email-daemon/email-daemon-auto-poll.c | 4 +--- 3 files changed, 23 insertions(+), 17 deletions(-) diff --git a/email-core/email-core-mime.c b/email-core/email-core-mime.c index 659cff3..a07d773 100755 --- a/email-core/email-core-mime.c +++ b/email-core/email-core-mime.c @@ -2493,7 +2493,7 @@ static int emcore_write_response_into_file(char *filename, char *write_mode, cha memset(body_inline_id, 0x00, 512); - if (body_inline && body_inline->id && EM_SAFE_STRLEN(body_inline->id) > 0) { + if (body_inline->id && EM_SAFE_STRLEN(body_inline->id) > 0) { /*prevent 27454*/ EM_DEBUG_LOG("body_inline->id - %s", body_inline->id); EM_DEBUG_LOG("param - %p param1 - %p", param, param1); decoded_content_id = strstr(decoded, "cid:"); diff --git a/email-core/email-core-utils.c b/email-core/email-core-utils.c index 62e5900..3f3ee24 100755 --- a/email-core/email-core-utils.c +++ b/email-core/email-core-utils.c @@ -1177,7 +1177,7 @@ int emcore_get_preview_text_from_file(const char *input_plain_path, const char * local_preview_buffer_length = input_preview_buffer_length * 2; - if ( input_html_path != NULL) { + if ( input_html_path ) { /*prevent 26249*/ /* get preview text from html file */ if( (err = em_get_encoding_type_from_file_path(input_html_path, &encoding_type)) != EMAIL_ERROR_NONE) { EM_DEBUG_EXCEPTION("em_get_encoding_type_from_file_path failed [%s]", err); @@ -1204,19 +1204,23 @@ int emcore_get_preview_text_from_file(const char *input_plain_path, const char * byte_read = fread(local_preview_text, sizeof(char), st_buf.st_size, fp_html); - if (ferror(fp_html)) { - EM_DEBUG_EXCEPTION("fread failed [%s]", input_html_path); - err = EMAIL_ERROR_SYSTEM_FAILURE; - goto FINISH_OFF; + if(byte_read <= 0) { /*prevent 26249*/ + EM_SAFE_FREE(local_preview_text); + if (ferror(fp_html)) { + EM_DEBUG_EXCEPTION("fread failed [%s]", input_html_path); + err = EMAIL_ERROR_SYSTEM_FAILURE; + goto FINISH_OFF; + } } - - if ( (err = emcore_strip_HTML(local_preview_text)) != EMAIL_ERROR_NONE) { - EM_DEBUG_EXCEPTION("emcore_strip failed"); - goto FINISH_OFF; + else { + if ( (err = emcore_strip_HTML(local_preview_text)) != EMAIL_ERROR_NONE) { + EM_DEBUG_EXCEPTION("emcore_strip failed"); + goto FINISH_OFF; + } } } - if ( (local_preview_text == NULL || (local_preview_text && EM_SAFE_STRLEN(local_preview_text) == 0) ) && input_plain_path != NULL) { + if ( !local_preview_text && input_plain_path) { /*prevent 26249*/ /* get preview text from plain text file */ if( (err = em_get_encoding_type_from_file_path(input_plain_path, &encoding_type)) != EMAIL_ERROR_NONE) { EM_DEBUG_EXCEPTION("em_get_encoding_type_from_file_path failed [%s]", err); @@ -1236,9 +1240,13 @@ int emcore_get_preview_text_from_file(const char *input_plain_path, const char * byte_read = fread(local_preview_text, sizeof(char), local_preview_buffer_length - 1, fp_plain); - if (ferror(fp_plain)) { - EM_DEBUG_EXCEPTION("fread failed [%s]", input_plain_path); - err = EMAIL_ERROR_SYSTEM_FAILURE; + if(byte_read <=0) { /*prevent 26249*/ + EM_SAFE_FREE(local_preview_text); + err = EMAIL_ERROR_NULL_VALUE; + if (ferror(fp_plain)) { + EM_DEBUG_EXCEPTION("fread failed [%s]", input_plain_path); + err = EMAIL_ERROR_SYSTEM_FAILURE; + } goto FINISH_OFF; } diff --git a/email-daemon/email-daemon-auto-poll.c b/email-daemon/email-daemon-auto-poll.c index 6dbea64..0b4cee9 100755 --- a/email-daemon/email-daemon-auto-poll.c +++ b/email-daemon/email-daemon-auto-poll.c @@ -326,8 +326,6 @@ static int _emdaemon_create_alarm(int alarm_interval, alarm_id_t *p_alarm_id) /* time_t current_time = {0}; */ /* struct tm current_tm = {0}; */ - int error_code = 0; - /* Fill alarm info */ /* int timeFormat = 0; */ /*0 means 12hrs , 1 means 24hrs*/ @@ -346,7 +344,7 @@ static int _emdaemon_create_alarm(int alarm_interval, alarm_id_t *p_alarm_id) return false; } - error_code = alarmmgr_add_alarm(ALARM_TYPE_VOLATILE, alarm_interval * 60 /*(sec)*/, ALARM_REPEAT_MODE_ONCE, AUTO_POLL_DESTINATION, p_alarm_id); + a_nErrorCode = alarmmgr_add_alarm(ALARM_TYPE_VOLATILE, alarm_interval * 60 /*(sec)*/, ALARM_REPEAT_MODE_ONCE, AUTO_POLL_DESTINATION, p_alarm_id); /*prevent 23154*/ if (a_nErrorCode != ALARMMGR_RESULT_SUCCESS) { EM_DEBUG_EXCEPTION("alarmmgr_add_alarm : ErrorCode[%d]",a_nErrorCode); return false; -- 2.7.4