mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r624) Merge r377 to trunk:
Remove the memmove special case for MSVC According to the MSDN it was just plain wrong and memmove was directly used in some places anyway
This commit is contained in:
parent
01e88bb61d
commit
57c472e093
|
@ -398,7 +398,7 @@ void NetworkProcessCommands()
|
|||
assert(_future_seed[0].frame >= _frame_counter);
|
||||
if (_future_seed[0].frame != _frame_counter) break;
|
||||
if (_future_seed[0].seed[0] != _sync_seed_1 ||_future_seed[0].seed[1] != _sync_seed_2) NetworkHandleDeSync();
|
||||
memcpy_overlapping(_future_seed, _future_seed + 1, --_num_future_seed * sizeof(FutureSeeds));
|
||||
memmove(_future_seed, _future_seed + 1, --_num_future_seed * sizeof(FutureSeeds));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -524,7 +524,7 @@ static void CompactSpriteCache()
|
|||
_sprite_ptr[i] -= size;
|
||||
|
||||
// Move the memory
|
||||
memcpy_overlapping(s+S_HDRSIZE, s+S_HDRSIZE+size, sizeb - S_HDRSIZE );
|
||||
memmove(s + S_HDRSIZE, s + S_HDRSIZE + size, sizeb - S_HDRSIZE);
|
||||
|
||||
// What we just did had the effect of swapping the allocated block with the free block, so we need to update
|
||||
// the block pointers. First update the allocated one. It is in use.
|
||||
|
|
6
stdafx.h
6
stdafx.h
|
@ -95,12 +95,6 @@ typedef unsigned int uint32;
|
|||
typedef unsigned int uint;
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
#define memcpy_overlapping memcpy
|
||||
#else
|
||||
#define memcpy_overlapping memmove
|
||||
#endif
|
||||
|
||||
#ifndef __BEOS__
|
||||
typedef signed char int8;
|
||||
typedef signed short int16;
|
||||
|
|
10
strings.c
10
strings.c
|
@ -182,14 +182,14 @@ void InjectDparam(int amount)
|
|||
int32 GetParamInt32()
|
||||
{
|
||||
int32 result = GET_DPARAM32(0);
|
||||
memcpy_overlapping(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
return result;
|
||||
}
|
||||
|
||||
static int64 GetParamInt64()
|
||||
{
|
||||
int64 result = GET_DPARAM32(0) + ((uint64)GET_DPARAM32(1) << 32);
|
||||
memcpy_overlapping(&_decode_parameters[0], &_decode_parameters[2], sizeof(uint32) * (lengthof(_decode_parameters)-2));
|
||||
memmove(&_decode_parameters[0], &_decode_parameters[2], sizeof(uint32) * (lengthof(_decode_parameters)-2));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -197,21 +197,21 @@ static int64 GetParamInt64()
|
|||
int GetParamInt16()
|
||||
{
|
||||
int result = (int16)GET_DPARAM16(0);
|
||||
memcpy_overlapping(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
return result;
|
||||
}
|
||||
|
||||
int GetParamInt8()
|
||||
{
|
||||
int result = (int8)GET_DPARAM8(0);
|
||||
memcpy_overlapping(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
return result;
|
||||
}
|
||||
|
||||
int GetParamUint16()
|
||||
{
|
||||
int result = GET_DPARAM16(0);
|
||||
memcpy_overlapping(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
memmove(&_decode_parameters[0], &_decode_parameters[1], sizeof(uint32) * (lengthof(_decode_parameters)-1));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -126,7 +126,7 @@ void DeleteAnimatedTile(uint tile)
|
|||
for(ti=_animated_tile_list; ti!=endof(_animated_tile_list); ti++) {
|
||||
if ( (TileIndex)tile == *ti) {
|
||||
/* remove the hole */
|
||||
memcpy_overlapping(ti, ti+1, endof(_animated_tile_list) - 1 - ti);
|
||||
memmove(ti, ti+1, endof(_animated_tile_list) - 1 - ti);
|
||||
/* and clear last item */
|
||||
endof(_animated_tile_list)[-1] = 0;
|
||||
MarkTileDirtyByTile(tile);
|
||||
|
|
Loading…
Reference in New Issue