diff options
author | Benoit Foucher <benoit@zeroc.com> | 2009-10-12 15:36:49 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2009-10-12 15:36:49 +0200 |
commit | 002001e0b3815445f44d3cff81d84f3b0d4e7aa4 (patch) | |
tree | 01a8af981b60c08e2a847b6ebb19c7f547fa2610 /cpp/src/Ice/OpaqueEndpointI.cpp | |
parent | Added ConnectionInfo/EndpointInfo, bug 4280 & 3964 (diff) | |
download | ice-002001e0b3815445f44d3cff81d84f3b0d4e7aa4.tar.bz2 ice-002001e0b3815445f44d3cff81d84f3b0d4e7aa4.tar.xz ice-002001e0b3815445f44d3cff81d84f3b0d4e7aa4.zip |
Fixed bug 4266 - stringified proxy issues, other minor issues
Diffstat (limited to 'cpp/src/Ice/OpaqueEndpointI.cpp')
-rw-r--r-- | cpp/src/Ice/OpaqueEndpointI.cpp | 63 |
1 files changed, 37 insertions, 26 deletions
diff --git a/cpp/src/Ice/OpaqueEndpointI.cpp b/cpp/src/Ice/OpaqueEndpointI.cpp index 3fc6d7b913c..19c033881e7 100644 --- a/cpp/src/Ice/OpaqueEndpointI.cpp +++ b/cpp/src/Ice/OpaqueEndpointI.cpp @@ -144,40 +144,51 @@ IceInternal::OpaqueEndpointI::toString() const return s.str(); } -Ice::EndpointInfoPtr -IceInternal::OpaqueEndpointI::getInfo() const +namespace { - class InfoI : public Ice::OpaqueEndpointInfo - { - public: - InfoI(Ice::Short type, Ice::ByteSeq rawByes) : OpaqueEndpointInfo(-1, false, rawBytes), _type(type) - { - } +class InfoI : public Ice::OpaqueEndpointInfo +{ +public: + + InfoI(Ice::Short type, const Ice::ByteSeq& rawByes); - virtual Ice::Short - type() const - { - return _type; - } + virtual Ice::Short + type() const + { + return _type; + } - virtual bool - datagram() const - { - return false; - } + virtual bool + datagram() const + { + return false; + } + + virtual bool + secure() const + { + return false; + } + +private: + + Ice::Short _type; +}; - virtual bool - secure() const - { - return false; - } - private: +// +// COMPILERFIX: inlining this constructor causes crashes with gcc 4.0.1. +// +InfoI::InfoI(Ice::Short type, const Ice::ByteSeq& rawBytes) : Ice::OpaqueEndpointInfo(-1, false, rawBytes), _type(type) +{ +} - Ice::Short _type; - }; +} +Ice::EndpointInfoPtr +IceInternal::OpaqueEndpointI::getInfo() const +{ return new InfoI(_type, _rawBytes); } |