summaryrefslogtreecommitdiff
path: root/TAO/tao/CDR.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/CDR.cpp')
-rw-r--r--TAO/tao/CDR.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/TAO/tao/CDR.cpp b/TAO/tao/CDR.cpp
index 27d438e665a..3e1bb59fbd9 100644
--- a/TAO/tao/CDR.cpp
+++ b/TAO/tao/CDR.cpp
@@ -544,12 +544,15 @@ TAO_OutputCDR::write_octet_array_mb (const ACE_Message_Block* mb)
continue;
}
- ACE_Message_Block* cont = ACE_Message_Block::duplicate (i);
+ ACE_Message_Block* cont =
+ new ACE_Message_Block (i->data_block ()->duplicate ());
if (cont != 0)
{
cont->cont (this->current_->cont ());
this->current_->cont (cont);
this->current_ = cont;
+ cont->rd_ptr (i->rd_ptr ());
+ cont->wr_ptr (i->wr_ptr ());
}
else
{