summaryrefslogtreecommitdiff
path: root/TAO/tao/Transport.cpp
diff options
context:
space:
mode:
authorirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-07-08 17:01:38 +0000
committerirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-07-08 17:01:38 +0000
commitd6c198c6952f9405dc5bd7c5fad95bd48a57a603 (patch)
tree2ab631d155c7ad8c42e06565c0ce8fd200531042 /TAO/tao/Transport.cpp
parent86c0e18ee287e94990520b226cb47e6efaf22115 (diff)
downloadATCD-d6c198c6952f9405dc5bd7c5fad95bd48a57a603.tar.gz
ChangeLogTag: Sun Jun 30 22:22:05 2002 Irfan Pyarali <irfan@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/Transport.cpp')
-rw-r--r--TAO/tao/Transport.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/TAO/tao/Transport.cpp b/TAO/tao/Transport.cpp
index 68ab8203f9a..335a0e75c9c 100644
--- a/TAO/tao/Transport.cpp
+++ b/TAO/tao/Transport.cpp
@@ -1244,11 +1244,22 @@ TAO_Transport::handle_input_i (TAO_Resume_Handle &rh,
// Align the message block
ACE_CDR::mb_align (&message_block);
+ size_t recv_size = 0;
+ if (this->orb_core_->orb_params ()->single_read_optimization ())
+ {
+ recv_size =
+ message_block.space ();
+ }
+ else
+ {
+ recv_size =
+ this->messaging_object ()->header_length ();
+ }
// Read the message into the message block that we have created on
// the stack.
ssize_t n = this->recv (message_block.rd_ptr (),
- message_block.space (),
+ recv_size,
max_wait_time);
// If there is an error return to the reactor..