@ -2,6 +2,8 @@
// Licensed under GPLv2 or any later version
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
// Refer to the license.txt file included.
# include <cstring>
# include "common/logging/log.h"
# include "common/logging/log.h"
# include "core/mem_map.h"
# include "core/mem_map.h"
@ -38,6 +40,12 @@ ResultCode SharedMemory::Map(VAddr address, MemoryPermission permissions,
// TODO: Test permissions
// TODO: Test permissions
// HACK: Since there's no way to write to the memory block without mapping it onto the game
// process yet, at least initialize memory the first time it's mapped.
if ( address ! = this - > base_address ) {
std : : memset ( Memory : : GetPointer ( address ) , 0 , size ) ;
}
this - > base_address = address ;
this - > base_address = address ;
return RESULT_SUCCESS ;
return RESULT_SUCCESS ;