diff options
author | Benoit Foucher <benoit@zeroc.com> | 2012-08-06 16:14:03 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2012-08-06 16:14:03 +0200 |
commit | 7047b953adab26c7098cbfaea2b69f9d36231cd3 (patch) | |
tree | 8668c830838184ebc465554b85c085da42fb6f6a /cpp/src/Ice/Incoming.cpp | |
parent | Missing files (diff) | |
parent | Removed Stream::format method, replace with startWriteEncaps parameter (diff) | |
download | ice-7047b953adab26c7098cbfaea2b69f9d36231cd3.tar.bz2 ice-7047b953adab26c7098cbfaea2b69f9d36231cd3.tar.xz ice-7047b953adab26c7098cbfaea2b69f9d36231cd3.zip |
Merge remote-tracking branch 'origin/encoding11' into mx
Conflicts:
cpp/src/Ice/.depend
cpp/src/Ice/.depend.mak
cpp/src/slice2cpp/Gen.cpp
Diffstat (limited to 'cpp/src/Ice/Incoming.cpp')
-rw-r--r-- | cpp/src/Ice/Incoming.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/cpp/src/Ice/Incoming.cpp b/cpp/src/Ice/Incoming.cpp index dab7c8c9936..3128a6f1f24 100644 --- a/cpp/src/Ice/Incoming.cpp +++ b/cpp/src/Ice/Incoming.cpp @@ -84,14 +84,14 @@ IceInternal::IncomingBase::__adopt(IncomingBase& other) } BasicStream* -IncomingBase::__startWriteParams() +IncomingBase::__startWriteParams(FormatType format) { if(_response) { assert(_os.b.size() == headerSize + 4); // Reply status position. assert(_current.encoding >= Ice::Encoding_1_0); // Encoding for reply is known. _os.write(static_cast<Ice::Byte>(0)); - _os.startWriteEncaps(_current.encoding); + _os.startWriteEncaps(_current.encoding, format); } // @@ -145,6 +145,14 @@ IncomingBase::__writeParamEncaps(const Byte* v, Ice::Int sz, bool ok) } } +void +IncomingBase::__writeUserException(const Ice::UserException& ex, Ice::FormatType format) +{ + ::IceInternal::BasicStream* __os = __startWriteParams(format); + __os->write(ex); + __endWriteParams(false); +} + void IceInternal::IncomingBase::__warning(const Exception& ex) const { @@ -207,7 +215,7 @@ IceInternal::IncomingBase::__servantLocatorFinished() { _os.b.resize(headerSize + 4); // Reply status position. _os.write(replyUserException); - _os.startWriteEncaps(_current.encoding); + _os.startWriteEncaps(_current.encoding, DefaultFormat); _os.write(ex); _os.endWriteEncaps(); _connection->sendResponse(&_os, _compress); @@ -581,7 +589,7 @@ IceInternal::Incoming::invoke(const ServantManagerPtr& servantManager, BasicStre if(_response) { _os.write(replyUserException); - _os.startWriteEncaps(encoding); + _os.startWriteEncaps(encoding, DefaultFormat); _os.write(ex); _os.endWriteEncaps(); _connection->sendResponse(&_os, _compress); |