diff options
Diffstat (limited to 'ace/CDR_Base.inl')
-rw-r--r-- | ace/CDR_Base.inl | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ace/CDR_Base.inl b/ace/CDR_Base.inl index bf0f8b8d878..79d10e7294a 100644 --- a/ace/CDR_Base.inl +++ b/ace/CDR_Base.inl @@ -156,6 +156,15 @@ ACE_CDR::mb_align (ACE_Message_Block *mb) ACE_CDR::MAX_ALIGNMENT); mb->rd_ptr (start); mb->wr_ptr (start); + +#if defined (ACE_HAS_PURIFY) + // This is a good place to zero the buffer; this is not needed + // by IIOP, but makes Purify happy. + if (mb->base () != 0) + { + (void) ACE_OS::memset (mb->base (), 0, mb->size ()); + } +#endif /* ACE_HAS_PURIFY */ } ACE_INLINE size_t |