diff options
Diffstat (limited to 'libraries/libvmime-zarafa/zarafa-patches/vmime-missing-boundary.diff')
-rw-r--r-- | libraries/libvmime-zarafa/zarafa-patches/vmime-missing-boundary.diff | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/libraries/libvmime-zarafa/zarafa-patches/vmime-missing-boundary.diff b/libraries/libvmime-zarafa/zarafa-patches/vmime-missing-boundary.diff new file mode 100644 index 0000000000..724a68427f --- /dev/null +++ b/libraries/libvmime-zarafa/zarafa-patches/vmime-missing-boundary.diff @@ -0,0 +1,31 @@ +diff -Nurb libvmime-0.7.1.orig/src/body.cpp libvmime-0.7.1/src/body.cpp +--- libvmime-0.7.1.orig/src/body.cpp 2005-03-18 22:26:46.000000000 +0100 ++++ libvmime-0.7.1/src/body.cpp 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 |