diff options
Diffstat (limited to 'TAO/tao/Strategies/SHMIOP_Acceptor.cpp')
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Acceptor.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp index 170a6b353b0..829561bf057 100644 --- a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp +++ b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp @@ -117,7 +117,12 @@ TAO_SHMIOP_Acceptor::create_profile (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () == 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an SHMIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components, so we follow + // the same convention for SHMIOP). + if (this->orb_core_->orb_params ()->std_profile_components () == 0 + || (this->version_.major == 1 && this->version_.minor == 0)) return 0; pfile->tagged_components ().set_orb_type (TAO_ORB_TYPE); @@ -321,7 +326,7 @@ TAO_SHMIOP_Acceptor::open_i (TAO_ORB_Core* orb_core) (void) this->base_acceptor_.acceptor().enable (ACE_CLOEXEC); // This avoids having child processes acquire the listen socket thereby // denying the server the opportunity to restart on a well-known endpoint. - // This does not affect the aberrent behavior on Win32 platforms. + // This does not affect the aberrent behavior on Win32 platforms. if (TAO_debug_level > 5) { |