summaryrefslogtreecommitdiff
path: root/TAO/tao/GIOP_Message_Generator_Parser_12.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/GIOP_Message_Generator_Parser_12.cpp')
-rw-r--r--TAO/tao/GIOP_Message_Generator_Parser_12.cpp59
1 files changed, 27 insertions, 32 deletions
diff --git a/TAO/tao/GIOP_Message_Generator_Parser_12.cpp b/TAO/tao/GIOP_Message_Generator_Parser_12.cpp
index b8fdb450584..26fceb041dc 100644
--- a/TAO/tao/GIOP_Message_Generator_Parser_12.cpp
+++ b/TAO/tao/GIOP_Message_Generator_Parser_12.cpp
@@ -1,31 +1,29 @@
// $Id$
-#include "GIOP_Message_Generator_Parser_12.h"
-#include "GIOP_Utils.h"
-#include "GIOP_Message_State.h"
-
-#include "GIOP_Message_Locate_Header.h"
-
-#include "operation_details.h"
-#include "CDR.h"
-#include "Any.h"
-#include "debug.h"
-#include "OctetSeqC.h"
-#include "Pluggable_Messaging_Utils.h"
-#include "TAO_Server_Request.h"
-#include "TAOC.h"
-#include "Service_Context.h"
-#include "Pluggable.h"
-#include "ORB_Core.h"
+#include "tao/GIOP_Message_Generator_Parser_12.h"
+#include "tao/GIOP_Utils.h"
+#include "tao/GIOP_Message_State.h"
+
+#include "tao/GIOP_Message_Locate_Header.h"
+
+#include "tao/operation_details.h"
+#include "tao/CDR.h"
+#include "tao/Any.h"
+#include "tao/debug.h"
+#include "tao/OctetSeqC.h"
+#include "tao/Pluggable_Messaging_Utils.h"
+#include "tao/TAO_Server_Request.h"
+#include "tao/TAOC.h"
+#include "tao/Service_Context.h"
+#include "tao/Pluggable.h"
+#include "tao/ORB_Core.h"
#include "Transport.h"
#if !defined (__ACE_INLINE__)
-# include "GIOP_Message_Generator_Parser_12.inl"
+# include "tao/GIOP_Message_Generator_Parser_12.inl"
#endif /* __ACE_INLINE__ */
-ACE_RCSID (tao,
- GIOP_Message_Gen_Parser_12,
- "$Id$")
+ACE_RCSID(tao, GIOP_Message_Gen_Parser_12, "$Id$")
// This is used by GIOP1.2. This is to align the message body on a
// 8-octet boundary. This is declared static so that it is in file
@@ -308,6 +306,8 @@ TAO_GIOP_Message_Generator_Parser_12::parse_request_header (
}
}
+ ACE_CString operation_name;
+
if (input.char_translator () == 0)
{
CORBA::ULong length = 0;
@@ -318,13 +318,10 @@ TAO_GIOP_Message_Generator_Parser_12::parse_request_header (
// Do not include NULL character at the end.
// @@ This is not getting demarshaled using the codeset
// translators!
-
- // Notice that there are no memory allocations involved
- // here!
-
- request.operation (input.rd_ptr (),
- length - 1,
- 0 /* TAO_ServerRequest does NOT own string */);
+ operation_name.set (input.rd_ptr (),
+ length - 1,
+ 0);
+ request.operation (operation_name);
hdr_status = input.skip_bytes (length);
}
}
@@ -337,10 +334,8 @@ TAO_GIOP_Message_Generator_Parser_12::parse_request_header (
// ISO8859-1.
CORBA::String_var tmp;
hdr_status = hdr_status && input.read_string (tmp.inout ());
-
- request.operation (tmp._retn (),
- 0,
- 1 /* TAO_ServerRequest owns string */);
+ operation_name.set (tmp._retn (), 1);
+ request.operation (operation_name);
}
// Tear out the service context ... we currently ignore it, but it