Fixes to eliminate valgrind warnings.
sql/rpl_record.cc: Factoring out expression and putting it in an auto variable. sql/rpl_utility.cc: Removing a check that causes compile warnings. sql/rpl_utility.h: Ensuring that there is enough memory for the metadata, to avoid reads from uninitialized memory. Initializing the memory to keep valgrind quiet.
This commit is contained in:
parent
6df75c85fd
commit
a04dff19f3
@ -250,13 +250,14 @@ unpack_row(RELAY_LOG_INFO const *rli,
|
|||||||
We only unpack the field if it was non-null.
|
We only unpack the field if it was non-null.
|
||||||
Use the master's size information if available else call
|
Use the master's size information if available else call
|
||||||
normal unpack operation.
|
normal unpack operation.
|
||||||
*/
|
*/
|
||||||
#if 0
|
#if 0
|
||||||
bool save= table->s->db_low_byte_first;
|
bool save= table->s->db_low_byte_first;
|
||||||
table->s->db_low_byte_first= TRUE;
|
table->s->db_low_byte_first= TRUE;
|
||||||
#endif
|
#endif
|
||||||
if (tabledef && tabledef->field_metadata(i))
|
uint16 const metadata= tabledef->field_metadata(i);
|
||||||
pack_ptr= f->unpack(f->ptr, pack_ptr, tabledef->field_metadata(i));
|
if (tabledef && metadata)
|
||||||
|
pack_ptr= f->unpack(f->ptr, pack_ptr, metadata);
|
||||||
else
|
else
|
||||||
pack_ptr= f->unpack(f->ptr, pack_ptr);
|
pack_ptr= f->unpack(f->ptr, pack_ptr);
|
||||||
#if 0
|
#if 0
|
||||||
|
@ -97,7 +97,7 @@ uint32 table_def::calc_field_size(uint col, uchar *master_data)
|
|||||||
{
|
{
|
||||||
uint from_len= (m_field_metadata[col] >> 8U) & 0x00ff;
|
uint from_len= (m_field_metadata[col] >> 8U) & 0x00ff;
|
||||||
uint from_bit_len= m_field_metadata[col] & 0x00ff;
|
uint from_bit_len= m_field_metadata[col] & 0x00ff;
|
||||||
DBUG_ASSERT(from_bit_len >= 0 && from_bit_len <= 7);
|
DBUG_ASSERT(from_bit_len <= 7);
|
||||||
length= from_len + ((from_bit_len > 0) ? 1 : 0);
|
length= from_len + ((from_bit_len > 0) ? 1 : 0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -65,10 +65,14 @@ public:
|
|||||||
m_field_metadata(0), m_null_bits(0), m_memory(NULL)
|
m_field_metadata(0), m_null_bits(0), m_memory(NULL)
|
||||||
{
|
{
|
||||||
m_memory= (uchar *)my_multi_malloc(MYF(MY_WME),
|
m_memory= (uchar *)my_multi_malloc(MYF(MY_WME),
|
||||||
&m_type, size,
|
&m_type, size,
|
||||||
&m_field_metadata, size * sizeof(short),
|
&m_field_metadata,
|
||||||
&m_null_bits, (m_size + 7) / 8,
|
size * sizeof(uint16),
|
||||||
NULL);
|
&m_null_bits, (size + 7) / 8,
|
||||||
|
NULL);
|
||||||
|
|
||||||
|
bzero(m_field_metadata, size * sizeof(uint16));
|
||||||
|
|
||||||
if (m_type)
|
if (m_type)
|
||||||
memcpy(m_type, types, size);
|
memcpy(m_type, types, size);
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user