diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2005-02-25 06:13:29 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2005-02-25 06:13:29 +0000 |
commit | e564504e93358fe8583e0ce3f5894a10f359d247 (patch) | |
tree | 6d919e98da4ad7505477e60272e997c44029fcf8 /TAO | |
parent | f272ae7034d66d14127d9a0bb3f1c0dc9664a2f8 (diff) | |
download | ATCD-e564504e93358fe8583e0ce3f5894a10f359d247.tar.gz |
ChangeLogTag:Thu Feb 24 22:09:24 2005 Ossama Othman <ossama@dre.vanderbilt.edu>
Diffstat (limited to 'TAO')
-rw-r--r-- | TAO/ChangeLog | 9 | ||||
-rw-r--r-- | TAO/tao/PortableServer/Upcall_Wrapper.cpp | 34 |
2 files changed, 27 insertions, 16 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 7dc01f5258c..4527fc73e7f 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,12 @@ +Thu Feb 24 22:09:24 2005 Ossama Othman <ossama@dre.vanderbilt.edu> + + * tao/PortableServer/Upcall_Wrapper.cpp (upcall): + + Instantiate TAO_PICurrent_Guard and perform upcall within their + own scope prior to invocation of an ending interception point. + Addresses a regression that was introduced after the skeleton + refactoring branch merge. + Thu Feb 24 17:34:52 2005 Ossama Othman <ossama@dre.vanderbilt.edu> * TAO_IDL/be/be_interface.cpp (gen_skel_helper): diff --git a/TAO/tao/PortableServer/Upcall_Wrapper.cpp b/TAO/tao/PortableServer/Upcall_Wrapper.cpp index 9057f33c209..8871eb901d2 100644 --- a/TAO/tao/PortableServer/Upcall_Wrapper.cpp +++ b/TAO/tao/PortableServer/Upcall_Wrapper.cpp @@ -58,26 +58,28 @@ TAO::Upcall_Wrapper::upcall (TAO_ServerRequest & server_request, ACE_TRY { - TAO::PICurrent_Guard pi_guard (server_request, - true /* Copy TSC to RSC */); - - // Invoke intermediate server side interception points. - interceptor_adapter.receive_request (&request_info - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; - - // Don't bother performing the upcall if an interceptor caused a - // location forward. - if (!interceptor_adapter.location_forwarded ()) - { + { + TAO::PICurrent_Guard pi_guard (server_request, + true /* Copy TSC to RSC */); + + // Invoke intermediate server side interception points. + interceptor_adapter.receive_request (&request_info + ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; + + // Don't bother performing the upcall if an interceptor caused a + // location forward. + if (!interceptor_adapter.location_forwarded ()) + { #endif /* TAO_HAS_INTERCEPTORS */ - // The actual upcall. - command.execute (ACE_ENV_SINGLE_ARG_PARAMETER); - TAO_INTERCEPTOR_CHECK; + // The actual upcall. + command.execute (ACE_ENV_SINGLE_ARG_PARAMETER); + TAO_INTERCEPTOR_CHECK; #if TAO_HAS_INTERCEPTORS == 1 - } + } + } // Do not execute the send_reply() interception point if an // interceptor caused a location forward. The send_other() |