diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-05-26 17:13:31 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-05-26 17:13:31 +0000 |
commit | b417d3596b0f1f90cd52cf46a510e5b17ad8e127 (patch) | |
tree | 0b5172591a7b71e838ff9829307fc0660d415717 /TAO/tao/Any.cpp | |
parent | 9a913f84d644092c73cf8c8ba7e72c3d8923a254 (diff) | |
download | ATCD-b417d3596b0f1f90cd52cf46a510e5b17ad8e127.tar.gz |
Fixed two leaks in the CDR << operator for Any.
Diffstat (limited to 'TAO/tao/Any.cpp')
-rw-r--r-- | TAO/tao/Any.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/TAO/tao/Any.cpp b/TAO/tao/Any.cpp index 0d121b2e637..a91d5d8dde6 100644 --- a/TAO/tao/Any.cpp +++ b/TAO/tao/Any.cpp @@ -1588,14 +1588,16 @@ CORBA::Boolean operator<< (TAO_OutputCDR& cdr, const CORBA::Any &x) { - if (!(cdr << x.type ())) + CORBA::TypeCode_var tc = x.type (); + + if (!(cdr << tc.in ())) return 0; ACE_TRY_NEW_ENV { TAO_InputCDR input (x._tao_get_cdr (), x._tao_byte_order ()); - TAO_Marshal_Object::perform_append (x.type (), + TAO_Marshal_Object::perform_append (tc.in (), &input, &cdr, ACE_TRY_ENV); |