summaryrefslogtreecommitdiff
path: root/storage/maria/ma_blockrec.c
diff options
context:
space:
mode:
Diffstat (limited to 'storage/maria/ma_blockrec.c')
-rw-r--r--storage/maria/ma_blockrec.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/storage/maria/ma_blockrec.c b/storage/maria/ma_blockrec.c
index 7e996d0ced8..fe719888817 100644
--- a/storage/maria/ma_blockrec.c
+++ b/storage/maria/ma_blockrec.c
@@ -3248,8 +3248,9 @@ static my_bool write_block_record(MARIA_HA *info,
blob_length-= (blob_length % FULL_PAGE_SIZE(block_size));
if (blob_length)
{
- memcpy(&log_array_pos->str, record + tmp_column->offset + length,
- sizeof(uchar*));
+ memcpy((void*) &log_array_pos->str,
+ record + tmp_column->offset + length,
+ sizeof(uchar*));
log_array_pos->length= blob_length;
log_entry_length+= blob_length;
log_array_pos++;
@@ -5344,6 +5345,7 @@ int _ma_scan_restore_block_record(MARIA_HA *info,
info Maria handler
record Store found here
record_pos Value stored in info->cur_row.next_pos after last call
+ This is offset inside the current pagebuff
skip_deleted
NOTES
@@ -5381,7 +5383,7 @@ restart_record_read:
/* Ensure that scan.dir and record_pos are in sync */
DBUG_ASSERT(info->scan.dir == dir_entry_pos(info->scan.page_buff,
share->block_size,
- record_pos));
+ (uint) record_pos));
/* Search for a valid directory entry (not 0) */
while (!(offset= uint2korr(info->scan.dir)))
@@ -5977,12 +5979,12 @@ static size_t fill_update_undo_parts(MARIA_HA *info, const uchar *oldrec,
{
uint size_length= column->length - portable_sizeof_char_ptr;
old_column_length= _ma_calc_blob_length(size_length, old_column_pos);
- memcpy(&old_column_pos, oldrec + column->offset + size_length,
+ memcpy((void*) &old_column_pos, oldrec + column->offset + size_length,
sizeof(old_column_pos));
if (!new_column_is_empty)
{
new_column_length= _ma_calc_blob_length(size_length, new_column_pos);
- memcpy(&new_column_pos, newrec + column->offset + size_length,
+ memcpy((void*) &new_column_pos, newrec + column->offset + size_length,
sizeof(old_column_pos));
}
break;