diff options
Diffstat (limited to 'cpp/src/Ice/ThreadPool.cpp')
-rw-r--r-- | cpp/src/Ice/ThreadPool.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp index fbe7b4a2e34..53bb5d0d956 100644 --- a/cpp/src/Ice/ThreadPool.cpp +++ b/cpp/src/Ice/ThreadPool.cpp @@ -17,6 +17,7 @@ #include <Ice/Properties.h> #include <Ice/Logger.h> #include <Ice/Functional.h> +#include <Ice/Protocol.h> #include <sstream> using namespace std; @@ -370,11 +371,11 @@ IceInternal::ThreadPool::read(const EventHandlerPtr& handler) { Stream& stream = handler->_stream; - if (stream.b.size() < 7) // Read header? + if (stream.b.size() < static_cast<Stream::Container::size_type>(headerSize)) // Read header? { if (stream.b.size() == 0) { - stream.b.resize(7); + stream.b.resize(headerSize); stream.i = stream.b.begin(); } @@ -385,19 +386,19 @@ IceInternal::ThreadPool::read(const EventHandlerPtr& handler) } } - if (stream.b.size() >= 7) // Interpret header? + if (stream.b.size() >= static_cast<Stream::Container::size_type>(headerSize)) // Interpret header? { int pos = stream.i - stream.b.begin(); stream.i = stream.b.begin(); Byte protVer; stream.read(protVer); - if (protVer != 0) + if (protVer != protocolVersion) { throw UnsupportedProtocolException(__FILE__, __LINE__); } Byte encVer; stream.read(encVer); - if (encVer != 0) + if (encVer != encodingVersion) { throw UnsupportedEncodingException(__FILE__, __LINE__); } @@ -413,7 +414,7 @@ IceInternal::ThreadPool::read(const EventHandlerPtr& handler) stream.i = stream.b.begin() + pos; } - if (stream.b.size() > 7 && stream.i != stream.b.end()) + if (stream.b.size() > static_cast<Stream::Container::size_type>(headerSize) && stream.i != stream.b.end()) { handler->read(stream); } |