diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2007-08-13 07:04:43 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2007-08-13 07:04:43 +0000 |
commit | 71f8551332d68ad478992becb7f226f5a2002153 (patch) | |
tree | 49e1c05b0e4485390b83e8c3fdc0f6d0877bf18e | |
parent | 90db25ffa77149e4fbba9e8900c58f26a6712345 (diff) | |
download | ATCD-71f8551332d68ad478992becb7f226f5a2002153.tar.gz |
Mon Aug 12 07:03:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl>
-rw-r--r-- | ACE/ChangeLog | 7 | ||||
-rw-r--r-- | ACE/THANKS | 1 | ||||
-rw-r--r-- | ACE/ace/Log_Msg_IPC.cpp | 8 |
3 files changed, 14 insertions, 2 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog index 0c5718a9328..413e2bc22ce 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,3 +1,10 @@ +Mon Aug 12 07:03:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/Log_Msg_IPC.cpp: + Fixed wrong calculation of payload size when unicode is enabled. + Thanks to David Beck <davidbeck at acm dot org> for reporting this. + This fixes bugzilla 3038 + Mon Aug 12 04:40:12 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> * ace/config-linux-common.h: diff --git a/ACE/THANKS b/ACE/THANKS index 77fc02f851c..0394d7d0d2d 100644 --- a/ACE/THANKS +++ b/ACE/THANKS @@ -2218,6 +2218,7 @@ Hal Black <hal dot black at gmail dot com> Peter Korf <peter at niendo dot de> Norbert Thoden <thoden at rheinmetall-de dot com> Premkumar P <kumaran dot prem at gmail dot com> +David Beck <davidbeck at acm dot org> I would particularly like to thank Paul Stephenson, who worked with me at Ericsson in the early 1990's. Paul devised the recursive Makefile diff --git a/ACE/ace/Log_Msg_IPC.cpp b/ACE/ace/Log_Msg_IPC.cpp index eb88c7ed2c2..82411a3cf92 100644 --- a/ACE/ace/Log_Msg_IPC.cpp +++ b/ACE/ace/Log_Msg_IPC.cpp @@ -49,13 +49,17 @@ ACE_Log_Msg_IPC::log (ACE_Log_Record &log_record) { // Serialize the log record using a CDR stream, allocate enough // space for the complete <ACE_Log_Record>. - size_t max_payload_size = + size_t const max_payload_size = 4 // type + 4 // pid + 12 // timestamp + 4 // process id + 4 // data length - + log_record.msg_data_len () // message +#if defined (ACE_USES_WCHAR) + + (log_record.msg_data_len () * ACE_OutputCDR::wchar_maxbytes()) // message +#else + + log_record.msg_data_len () // message +#endif + ACE_CDR::MAX_ALIGNMENT; // padding; // Insert contents of <log_record> into payload stream. |