diff options
Diffstat (limited to 'TAO/tao/ClientRequestInfo_i.cpp')
-rw-r--r-- | TAO/tao/ClientRequestInfo_i.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/TAO/tao/ClientRequestInfo_i.cpp b/TAO/tao/ClientRequestInfo_i.cpp index 0201005610e..a6b201465c0 100644 --- a/TAO/tao/ClientRequestInfo_i.cpp +++ b/TAO/tao/ClientRequestInfo_i.cpp @@ -55,6 +55,12 @@ TAO_ClientRequestInfo_i::TAO_ClientRequestInfo_i (TAO_GIOP_Invocation *inv, TAO_ClientRequestInfo_i::~TAO_ClientRequestInfo_i (void) { + // Make sure the TSC no longer considers the current RSC its peer + // since that RSC is destroyed when this ClienRequestInfo object is + // destroyed. + TAO_PICurrent_Impl *tsc = this->rs_pi_current_.pi_peer (); + if (tsc != 0) + tsc->pi_peer (0); } CORBA::Object_ptr |