diff options
Diffstat (limited to 'TAO/tao/ClientRequestInfo.inl')
-rw-r--r-- | TAO/tao/ClientRequestInfo.inl | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/TAO/tao/ClientRequestInfo.inl b/TAO/tao/ClientRequestInfo.inl index 0fed4cfe47c..50bd99d0a2c 100644 --- a/TAO/tao/ClientRequestInfo.inl +++ b/TAO/tao/ClientRequestInfo.inl @@ -46,7 +46,7 @@ TAO_ClientRequestInfo::reply_status (int invoke_status) ACE_INLINE void TAO_ClientRequestInfo::forward_reference ( - PortableInterceptor::ForwardRequest &) + PortableInterceptor::ForwardRequest &exc) { // Note that we're converting the ForwardRequest exception in to a // LOCATION_FORWARD reply, so we do not set the exception status. @@ -55,5 +55,10 @@ TAO_ClientRequestInfo::forward_reference ( // handled by the TAO_GIOP_Invocation object so that its profiles // can be added to the list of forward profiles. - this->reply_status_ = PortableInterceptor::LOCATION_FORWARD; + if (exc.permanent) + this->reply_status_ = + PortableInterceptor::LOCATION_FORWARD_PERMANENT; + else + this->reply_status_ = + PortableInterceptor::LOCATION_FORWARD; } |