From 0f45e17f09ffd506c11041e326bcb4cff27ec7d3 Mon Sep 17 00:00:00 2001 From: shenweip <1037567878@qq.com> Date: Sat, 29 Aug 2020 19:51:11 +0800 Subject: [PATCH] Only clear when initializating kernelMemory and userMemory. --- Core/HLE/sceKernelMemory.cpp | 6 ++++-- Core/Util/BlockAllocator.cpp | 2 -- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Core/HLE/sceKernelMemory.cpp b/Core/HLE/sceKernelMemory.cpp index 7da8bc4ef2..8ceb699fad 100644 --- a/Core/HLE/sceKernelMemory.cpp +++ b/Core/HLE/sceKernelMemory.cpp @@ -426,8 +426,10 @@ void __KernelFplEndCallback(SceUID threadID, SceUID prevCallbackId); void __KernelMemoryInit() { - kernelMemory.Init(PSP_GetKernelMemoryBase(), PSP_GetKernelMemoryEnd()-PSP_GetKernelMemoryBase()); - userMemory.Init(PSP_GetUserMemoryBase(), PSP_GetUserMemoryEnd()-PSP_GetUserMemoryBase()); + kernelMemory.Init(PSP_GetKernelMemoryBase(), PSP_GetKernelMemoryEnd() - PSP_GetKernelMemoryBase()); + userMemory.Init(PSP_GetUserMemoryBase(), PSP_GetUserMemoryEnd() - PSP_GetUserMemoryBase()); + Memory::Memset(PSP_GetKernelMemoryBase(), 0, PSP_GetKernelMemoryEnd() - PSP_GetKernelMemoryBase()); + Memory::Memset(PSP_GetUserMemoryBase(), 0, PSP_GetUserMemoryEnd() - PSP_GetUserMemoryBase()); INFO_LOG(SCEKERNEL, "Kernel and user memory pools initialized"); vplWaitTimer = CoreTiming::RegisterEvent("VplTimeout", __KernelVplTimeout); diff --git a/Core/Util/BlockAllocator.cpp b/Core/Util/BlockAllocator.cpp index 53a0631232..c302d8e91b 100644 --- a/Core/Util/BlockAllocator.cpp +++ b/Core/Util/BlockAllocator.cpp @@ -23,7 +23,6 @@ #include "Common/StringUtils.h" #include "Core/Util/BlockAllocator.h" #include "Core/Reporting.h" -#include "Core/MemMapHelpers.h" // Slow freaking thing but works (eventually) :) @@ -44,7 +43,6 @@ void BlockAllocator::Init(u32 rangeStart, u32 rangeSize) //Initial block, covering everything top_ = new Block(rangeStart_, rangeSize_, false, NULL, NULL); bottom_ = top_; - Memory::Memset(rangeStart_, 0, rangeSize_); } void BlockAllocator::Shutdown()