index: added sanity checks to mail handler
This commit is contained in:
parent
b34826a083
commit
c1cea67333
1 changed files with 10 additions and 2 deletions
|
@ -130,9 +130,17 @@ bool MimeHandlerMail::set_document_string(const string &msgtxt)
|
||||||
MD5String(msgtxt, md5);
|
MD5String(msgtxt, md5);
|
||||||
m_metaData[cstr_dj_keymd5] = MD5HexPrint(md5, xmd5);
|
m_metaData[cstr_dj_keymd5] = MD5HexPrint(md5, xmd5);
|
||||||
|
|
||||||
m_stream = new stringstream(msgtxt);
|
if ((m_stream = new stringstream(msgtxt)) == 0 || !m_stream->good()) {
|
||||||
|
LOGERR(("MimeHandlerMail::set_document_string: stream create error."
|
||||||
|
"msgtxt.size() %d\n", int(msgtxt.size())));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
delete m_bincdoc;
|
delete m_bincdoc;
|
||||||
m_bincdoc = new Binc::MimeDocument;
|
if ((m_bincdoc = new Binc::MimeDocument) == 0) {
|
||||||
|
LOGERR(("MimeHandlerMail::set_doc._string: new Binc:Document failed."
|
||||||
|
" Out of memory?"));
|
||||||
|
return false;
|
||||||
|
}
|
||||||
m_bincdoc->parseFull(*m_stream);
|
m_bincdoc->parseFull(*m_stream);
|
||||||
if (!m_bincdoc->isHeaderParsed() && !m_bincdoc->isAllParsed()) {
|
if (!m_bincdoc->isHeaderParsed() && !m_bincdoc->isAllParsed()) {
|
||||||
LOGERR(("MimeHandlerMail::set_document_string: mime parse error\n"));
|
LOGERR(("MimeHandlerMail::set_document_string: mime parse error\n"));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue