diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-05-17 19:41:51 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-05-17 19:41:51 +0000 |
commit | b4df32a69ad8d9f4f58b0a8068c79ef05588fb78 (patch) | |
tree | 8cba8cb7c0e3a7a26c6f7527d8a108ce33cc84e9 | |
parent | d67001ef6d184c97ddc798ebc49890673585446d (diff) | |
download | ATCD-b4df32a69ad8d9f4f58b0a8068c79ef05588fb78.tar.gz |
ChangeLogTag: Wed May 17 19:35:09 UTC 2006 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r-- | TAO/ChangeLog | 42 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp | 5 | ||||
-rw-r--r-- | TAO/tests/Bug_2234_Regression/server.cpp | 2 | ||||
-rw-r--r-- | TAO/tests/OBV/ValueBox/client.cpp | 4 |
4 files changed, 38 insertions, 15 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 5dc0c4ccdc9..4bacaca11a0 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,35 +1,55 @@ +Wed May 17 19:35:09 UTC 2006 Jeff Parsons <j.parsons@vanderbilt.edu> + + * TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp: + + In the generated code for setting the member value, + removed the parentheses from the constructor call in + ACE_NEW, if the member type is a fixed-size IDL struct. + These parens were producing a warning on one of the + scoreboard's VC 7.1 builds, due to a behavior change + in the compiler. This behavior change is to initialize + PODs (for which an IDL fixed struct qualifies) to the + default value without requiring the parens denoting + a default constructor call. + + * tests/Bug_2234_Regression/server.cpp: + * tests/OBV/ValueBox/client.cpp: + + Made changes in hand-written client and server code in TAO/tests + similar to the changes in IDL compiler generated code above. + Wed May 17 19:09:36 UTC 2006 Yan Dai <dai_y@ociweb.com> - Merged OCI's changes + Merged OCI's changes "Fri May 12 21:59:41 UTC 2006 Yan Dai <dai_y@ociweb.com>" * TAO/tao/Intrusive_Ref_Count_Handle_T.inl: - + Fixed a potential memory leaks in operator==(T*) function. The memory leak could happen when this assignment operator is used to assign the same instance. * TAO/tao/CSD_ThreadPool/CSD_TP_Task.cpp: - - Made the TP_Dispatchable_Visitor object reset() called after + + Made the TP_Dispatchable_Visitor object reset() called after the request is dispatched. This would avoid the delay deletion of the request and its referenced objects. - + * tao/CSD_Framework/CSD_FW_Server_Request_Wrapper.cpp: - + Made the transport object in TAO_ServerRequest be reference counted by the CSD. Increment the reference counter when the TAO_ServerRequest is cloned, and decrement the reference counter - when the server request is destroyed. This would avoid crash + when the server request is destroyed. This would avoid crash when the transport object is destroyed but CSD has not finished dispatching the request. - Merged OCI's changes + Merged OCI's changes "Thu Apr 20 13:29:44 2006 Ciju John <john_c@ociweb.com>" - Made an SSLIOP endpoint value of 'iiop://:/ssl_port=xyz' listen - on all available network interfaces instead of listening on a - specific IP address. These changes make the 'iiop://:/ssl_port=xyz' + Made an SSLIOP endpoint value of 'iiop://:/ssl_port=xyz' listen + on all available network interfaces instead of listening on a + specific IP address. These changes make the 'iiop://:/ssl_port=xyz' and 'iiop:///ssl_port=xyz' have same semantics. * tao/IIOP_Acceptor.h : diff --git a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp index 3f8fc95b0d1..c5806a4efb0 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp @@ -686,6 +686,8 @@ be_visitor_valuebox_ci::emit_default_constructor_alloc (be_decl *node) // Retrieve the node being visited by this be_visitor_valuebox_ci be_decl * vb_node = this->ctx_->node (); + bool node_not_pod = + be_type::narrow_from_decl (node)->size_type () == AST_Type::VARIABLE; // Public default constructor *os << "ACE_INLINE " << be_nl @@ -694,7 +696,8 @@ be_visitor_valuebox_ci::emit_default_constructor_alloc (be_decl *node) << node->full_name () << "* p = 0;" << be_nl << "ACE_NEW (" << be_idt_nl << "p," << be_nl - << node->full_name () << " ());" << be_uidt_nl + << node->full_name () + << (node_not_pod ? " ()" : "") << ");" << be_uidt_nl << "this->_pd_value = p;" << be_uidt_nl << "}" << be_nl << be_nl; } diff --git a/TAO/tests/Bug_2234_Regression/server.cpp b/TAO/tests/Bug_2234_Regression/server.cpp index deb065f016f..c4bebf10c1b 100644 --- a/TAO/tests/Bug_2234_Regression/server.cpp +++ b/TAO/tests/Bug_2234_Regression/server.cpp @@ -136,7 +136,7 @@ public: newret.val= static_cast<CORBA::Long>( 7 ); Test::MyNonVarStruct *newval_p; - ACE_NEW_RETURN( newval_p, Test::MyNonVarStruct(), newret ); + ACE_NEW_RETURN( newval_p, Test::MyNonVarStruct, newret ); Test::MyNonVarStruct_var newval= newval_p; diff --git a/TAO/tests/OBV/ValueBox/client.cpp b/TAO/tests/OBV/ValueBox/client.cpp index 27e63f25ec2..12a3eb2bbd9 100644 --- a/TAO/tests/OBV/ValueBox/client.cpp +++ b/TAO/tests/OBV/ValueBox/client.cpp @@ -716,7 +716,7 @@ int test_boxed_struct (void) Fixed_Struct1 *fixed_struct_a = 0; ACE_NEW_RETURN (fixed_struct_a, - Fixed_Struct1 (), + Fixed_Struct1, 1); fixed_struct_a->l = 3233; fixed_struct_a->abstruct.s1 = 73; @@ -751,7 +751,7 @@ int test_boxed_struct (void) Fixed_Struct1 *fixed_struct_b = 0; ACE_NEW_RETURN (fixed_struct_b, - Fixed_Struct1 (), + Fixed_Struct1, 1); fixed_struct_b->l = 7372; fixed_struct_b->abstruct.s1 = 11; |