summaryrefslogtreecommitdiff
path: root/modules/TAO/tao/CDR.inl
diff options
context:
space:
mode:
Diffstat (limited to 'modules/TAO/tao/CDR.inl')
-rw-r--r--modules/TAO/tao/CDR.inl15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/TAO/tao/CDR.inl b/modules/TAO/tao/CDR.inl
index 7a4943589fc..204f247c996 100644
--- a/modules/TAO/tao/CDR.inl
+++ b/modules/TAO/tao/CDR.inl
@@ -455,6 +455,12 @@ ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &os,
return os << x.val_;
}
+ACE_INLINE CORBA::Boolean operator<< (TAO_OutputCDR &os,
+ const std::string &x)
+{
+ return os << x.c_str ();
+}
+
// ****************************************************************
ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &is,
@@ -549,5 +555,14 @@ ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &is,
return marshal_flag;
}
+ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &is,
+ std::string &x)
+{
+ char *buf = 0;
+ CORBA::Boolean const marshal_flag = is >> buf;
+ x.assign (buf);
+ ACE::strdelete (buf);
+ return marshal_flag;
+}
TAO_END_VERSIONED_NAMESPACE_DECL