aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/utility/filteredStream.cpp16
-rw-r--r--src/utility/stream.cpp6
2 files changed, 19 insertions, 3 deletions
diff --git a/src/utility/filteredStream.cpp b/src/utility/filteredStream.cpp
index eda0c64c..5db01047 100644
--- a/src/utility/filteredStream.cpp
+++ b/src/utility/filteredStream.cpp
@@ -30,6 +30,22 @@ namespace vmime {
namespace utility {
+// filteredInputStream
+
+stream::size_type filteredInputStream::getBlockSize()
+{
+ return std::min(inputStream::getBlockSize(), getPreviousInputStream().getBlockSize());
+}
+
+
+// filteredOutputStream
+
+stream::size_type filteredOutputStream::getBlockSize()
+{
+ return std::min(outputStream::getBlockSize(), getNextOutputStream().getBlockSize());
+}
+
+
// dotFilteredInputStream
dotFilteredInputStream::dotFilteredInputStream(inputStream& is)
diff --git a/src/utility/stream.cpp b/src/utility/stream.cpp
index bb5300ef..8fbf337b 100644
--- a/src/utility/stream.cpp
+++ b/src/utility/stream.cpp
@@ -38,7 +38,7 @@ namespace utility {
// stream
-stream::size_type stream::getBlockSize() const
+stream::size_type stream::getBlockSize()
{
return 32768; // 32 KB
}
@@ -468,7 +468,7 @@ void outputStreamSocketAdapter::flush()
}
-stream::size_type outputStreamSocketAdapter::getBlockSize() const
+stream::size_type outputStreamSocketAdapter::getBlockSize()
{
return 16384; // 16 KB
}
@@ -511,7 +511,7 @@ stream::size_type inputStreamSocketAdapter::skip
}
-stream::size_type inputStreamSocketAdapter::getBlockSize() const
+stream::size_type inputStreamSocketAdapter::getBlockSize()
{
return 16384; // 16 KB
}