#At file:///home/lsoares/Workspace/bzr/work/bugfixing/56882/mysql-next-mr-bugfixing/ based on revid:alfranio.correia@stripped
3295 Luis Soares 2010-09-21
BUG#56882: binlog_base64_flag fails on valgrind and win debug
max platforms
In some cases, the variable err in mysql_client_binlog_statement
would not be initialized but still some conditional jumps would
rely on its value. This is for instance the case when a BINLOG
event is truncated and it returns an error. In this case the
'err' variable is not initialized at that time, but we jump to
the label 'end' and then check the following condition:
if ((error || err) && ... )
This makes valgrind complain that there is a conditional jump or
move depending on an uninitialized value.
We fix this by initializing the variable err to 0.
modified:
sql/sql_binlog.cc
=== modified file 'sql/sql_binlog.cc'
--- a/sql/sql_binlog.cc 2010-09-01 02:51:08 +0000
+++ b/sql/sql_binlog.cc 2010-09-20 23:00:48 +0000
@@ -147,7 +147,7 @@ void mysql_client_binlog_statement(THD*
Allocation
*/
- int err;
+ int err= 0;
Relay_log_info *rli;
rli= thd->rli_fake;
if (!rli && (rli= thd->rli_fake= new Relay_log_info(FALSE)))
Attachment: [text/bzr-bundle] bzr/luis.soares@oracle.com-20100920230048-tflaf7q2i32ure04.bundle