Commit 55ea2654 authored by Monty's avatar Monty

Fixed warnings and one memory loss found by valgrind

The memory loss could happen in Aria with encrypted tables when Aria failed to encrypt a block.
In normal usage this should never happen.
parent 11c2d3c3
...@@ -1277,6 +1277,15 @@ ...@@ -1277,6 +1277,15 @@
fun:dlopen@@GLIBC_2.2.5 fun:dlopen@@GLIBC_2.2.5
} }
{
vasprintf in OpenSuse 12.3
Memcheck:Leak
fun:malloc
fun:vasprintf
fun:asprintf
fun:dlerror
}
{ {
GitHub codership/galera#308 GitHub codership/galera#308
Memcheck:Leak Memcheck:Leak
......
...@@ -6635,17 +6635,6 @@ static void copy_data_file_state(MARIA_STATE_INFO *to, ...@@ -6635,17 +6635,6 @@ static void copy_data_file_state(MARIA_STATE_INFO *to,
} }
/* Return 1 if block is full of zero's */
static my_bool zero_filled_block(uchar *tmp, uint length)
{
while (length--)
if (*(tmp++) != 0)
return 0;
return 1;
}
/* /*
Read 'safely' next record while scanning table. Read 'safely' next record while scanning table.
...@@ -6753,8 +6742,7 @@ read_next_page: ...@@ -6753,8 +6742,7 @@ read_next_page:
sometimes be found at end of a bitmap when we wrote a big sometimes be found at end of a bitmap when we wrote a big
record last that was moved to the next bitmap. record last that was moved to the next bitmap.
*/ */
if (!zero_filled_block(info->scan.page_buff, share->block_size) || if (_ma_check_bitmap_data(info, UNALLOCATED_PAGE, 0,
_ma_check_bitmap_data(info, UNALLOCATED_PAGE, 0,
_ma_bitmap_get_page_bits(info, _ma_bitmap_get_page_bits(info,
&share->bitmap, &share->bitmap,
page))) page)))
......
...@@ -416,7 +416,10 @@ static my_bool ma_crypt_index_pre_write_hook(PAGECACHE_IO_HOOK_ARGS *args) ...@@ -416,7 +416,10 @@ static my_bool ma_crypt_index_pre_write_hook(PAGECACHE_IO_HOOK_ARGS *args)
/* 2 - encrypt page */ /* 2 - encrypt page */
if (ma_encrypt(share, share->crypt_data, if (ma_encrypt(share, share->crypt_data,
src + head, dst + head, size, pageno, lsn, &key_version)) src + head, dst + head, size, pageno, lsn, &key_version))
{
my_free(crypt_buf);
return 1; return 1;
}
/* 3 - copy tail */ /* 3 - copy tail */
memcpy(dst + block_size - tail, src + block_size - tail, tail); memcpy(dst + block_size - tail, src + block_size - tail, tail);
/* 4 - store key version */ /* 4 - store key version */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment