24.10.2013 11:54, Sergei Golubchik пишет:
Hi, Sanja!
=== modified file 'storage/maria/ma_checksum.c'
--- a/storage/maria/ma_checksum.c 2008-04-03 13:40:25 +0000
+++ b/storage/maria/ma_checksum.c 2013-10-22 07:56:05 +0000
@@ -58,7 +58,7 @@ ha_checksum _ma_checksum(MARIA_HA *info,
length= _ma_calc_blob_length(blob_size_length, pos);
if (length)
{
- memcpy((char*) &pos, pos + blob_size_length, sizeof(char*));
+ memcpy((char*) &pos, pos + blob_size_length, (sizeof(char*)));
Why?
ma_checksum.c: In function '_ma_checksum':
ma_checksum.c:61:60: error: argument to 'sizeof' in 'memcpy' call is the
same pointer type 'char *' as the destination; expected 'char' or an
explicit length [-Werror=sizeof-pointer-memaccess]
memcpy((char*) &pos, pos + blob_size_length, sizeof(char*));
^
shouldn't it be:
memcpy((char**) &pos, pos + blob_size_length, sizeof(char*));
Sanja ^^^
That would be a better fix. The result looks more logical than with
meaningless parentheses.
Or, I suppose, you can try to drop the cast completely:
memcpy(&pos, pos + blob_size_length, sizeof(pos));
Hehe, it was my first fix (remove casting). but then I thought that the
casting was done for something and decided do not touch it. If you think
that this way is better I'll do it.
[skip]
_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp