From ef7cd793a4166789c5c357c9f4312e05d0298cf3 Mon Sep 17 00:00:00 2001 From: Ted John Date: Sat, 10 Sep 2016 18:35:12 +0100 Subject: [PATCH] x64: Fix game_command_modify_groups --- src/network/network.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/network/network.cpp b/src/network/network.cpp index b571f993b9..be2a79f4ed 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -2164,9 +2164,9 @@ void game_command_modify_groups(int *eax, int *ebx, int *ecx, int *edx, int *esi nameChunkOffset = 2; nameChunkOffset *= 12; nameChunkOffset = (std::min)(nameChunkOffset, Util::CountOf(newName) - 12); - RCT2_GLOBAL(newName + nameChunkOffset + 0, uint32) = *edx; - RCT2_GLOBAL(newName + nameChunkOffset + 4, uint32) = *ebp; - RCT2_GLOBAL(newName + nameChunkOffset + 8, uint32) = *edi; + memcpy((void*)((uintptr_t)newName + (uintptr_t)nameChunkOffset + 0), edx, sizeof(uint32)); + memcpy((void*)((uintptr_t)newName + (uintptr_t)nameChunkOffset + 4), ebp, sizeof(uint32)); + memcpy((void*)((uintptr_t)newName + (uintptr_t)nameChunkOffset + 8), edi, sizeof(uint32)); if (nameChunkIndex != 0) { *ebx = 0;