diff options
author | Phil Mesnier <mesnier_p@ociweb.com> | 2007-11-29 04:31:55 +0000 |
---|---|---|
committer | Phil Mesnier <mesnier_p@ociweb.com> | 2007-11-29 04:31:55 +0000 |
commit | 83d7a6943a809816d6b5cfb0c0cc30814a289386 (patch) | |
tree | 52bcba2171e7f9e44a2f6323d9c752555a942f9c | |
parent | 7f62812cea5b21b22ea42dbab611ce1a8e17184a (diff) | |
download | ATCD-83d7a6943a809816d6b5cfb0c0cc30814a289386.tar.gz |
Thu Nov 29 04:23:58 UTC 2007 Phil Mesnier <mesnier_p@ociweb.com>
-rw-r--r-- | TAO/ChangeLog | 7 | ||||
-rw-r--r-- | TAO/tests/DSI_AMH/Roundtrip.cpp | 12 | ||||
-rw-r--r-- | TAO/tests/DSI_AMI_Gateway/test_dsi.cpp | 8 |
3 files changed, 17 insertions, 10 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index a969aab601a..8731e56080b 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,10 @@ +Thu Nov 29 04:23:58 UTC 2007 Phil Mesnier <mesnier_p@ociweb.com> + + * tests/DSI_AMH/Roundtrip.cpp: + * tests/DSI_AMI_Gateway/test_dsi.cpp: + Fix to the ServerRequest argument ownership to avoid a double + delete situation which crashes these tests on HPUX. + Wed Nov 28 12:59:33 UTC 2007 Vladimir Zykov <vladimir.zykov@prismtech.com> * tests/Bug_3154_Regression/orbsvcs/CosNotification.idl: diff --git a/TAO/tests/DSI_AMH/Roundtrip.cpp b/TAO/tests/DSI_AMH/Roundtrip.cpp index 058dc5d8e2d..b903e653b70 100644 --- a/TAO/tests/DSI_AMH/Roundtrip.cpp +++ b/TAO/tests/DSI_AMH/Roundtrip.cpp @@ -29,14 +29,14 @@ Roundtrip::invoke (CORBA::ServerRequest_ptr request, else if (ACE_OS::strcmp ("_is_a", request->operation ()) == 0) { - CORBA::NVList_var list; - this->orb_->create_list (0, list.out()); + CORBA::NVList_ptr list; + this->orb_->create_list (0, list); CORBA::Any type_id; type_id._tao_set_typecode (CORBA::_tc_string); list->add_value ("type_id", type_id, CORBA::ARG_IN); - request->arguments (list.inout()); + request->arguments (list); // list still has ownership of the item CORBA::NamedValue_ptr nv = list->item (0); @@ -64,14 +64,14 @@ Roundtrip::invoke (CORBA::ServerRequest_ptr request, else if (ACE_OS::strcmp ("test_method", request->operation ()) == 0) { - CORBA::NVList_var list; - this->orb_->create_list (0, list.out()); + CORBA::NVList_ptr list; // will become property of the arguments list + this->orb_->create_list (0, list); CORBA::Any send_time; send_time._tao_set_typecode (CORBA::_tc_ulonglong); list->add_value ("send_time", send_time, CORBA::ARG_IN); - request->arguments (list.inout()); + request->arguments (list); CORBA::NamedValue_ptr nv = list->item (0); diff --git a/TAO/tests/DSI_AMI_Gateway/test_dsi.cpp b/TAO/tests/DSI_AMI_Gateway/test_dsi.cpp index 6d031a17249..7afaf5d2873 100644 --- a/TAO/tests/DSI_AMI_Gateway/test_dsi.cpp +++ b/TAO/tests/DSI_AMI_Gateway/test_dsi.cpp @@ -78,16 +78,16 @@ void DSI_Simple_Server::invoke (CORBA::ServerRequest_ptr request, TAO_AMH_DSI_Response_Handler * rph) { - CORBA::NVList_var opList; - this->orb_->create_list (0, opList.out()); + CORBA::NVList_ptr opList; + this->orb_->create_list (0, opList); - request->arguments (opList.inout()); + request->arguments (opList); CORBA::Request_var target_request; this->target_->_create_request (0, // ctx request->operation (), - opList.in(), + opList, 0, // result 0, // exception_list, 0, // context_list, |