Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > e548512dcc847653815f1b7adc710b15 > files > 19

libvmime07-0.7.1-4.fc13.src.rpm

Patch by Zarafa <http://www.zarafa.com/> - broken emails without a final boundary will still be able to
deliver with all attachments. The final part without the boundary will be treated as an attachment. 

--- libvmime-0.7.1/src/body.cpp						2005-03-18 22:26:46.000000000 +0100
+++ libvmime-0.7.1/src/body.cpp.missing-boundary			2006-01-12 15:45:48.443911888 +0100
@@ -200,6 +200,27 @@
 
 		if (partStart < end)
 			m_epilogText = string(buffer.begin() + partStart, buffer.begin() + end);
+
+		// lastPart was not found, so the last boundary was missing
+		// m_epilogText will become a bodyPart
+		if (!lastPart && pos == string::npos) {
+			bodyPart* part = new bodyPart;
+
+			try
+			{
+				part->parse(m_epilogText);
+			}
+			catch (std::exception&)
+			{
+				delete (part);
+				throw;
+			}
+
+			part->m_parent = m_part;
+
+			m_parts.push_back(part);
+		}
+			
 	}
 	// Treat the contents as 'simple' data
 	else