Call Host_NotifyMapLoaded when clearing g_symbolDB

Otherwise DolphinQt will have a stale symbol list and
you can get nullptr dereferences when trying to use it.
This commit is contained in:
JosJuice
2019-05-01 17:32:45 +02:00
parent d9999f406b
commit 8fd6f8f6e9
5 changed files with 24 additions and 3 deletions

View File

@ -20,6 +20,7 @@
#include "Core/HW/DVD/DVDInterface.h"
#include "Core/HW/Memmap.h"
#include "Core/HW/SystemTimers.h"
#include "Core/Host.h"
#include "Core/PowerPC/PPCSymbolDB.h"
#include "Core/PowerPC/PowerPC.h"
@ -52,11 +53,16 @@ bool Load()
NOTICE_LOG(IOS, "Reinitialised hardware.");
// Load symbols for the IPL if they exist.
g_symbolDB.Clear();
if (!g_symbolDB.IsEmpty())
{
g_symbolDB.Clear();
Host_NotifyMapLoaded();
}
if (g_symbolDB.LoadMap(File::GetUserPath(D_MAPS_IDX) + "mios-ipl.map"))
{
::HLE::Clear();
::HLE::PatchFunctions();
Host_NotifyMapLoaded();
}
const PowerPC::CoreMode core_mode = PowerPC::GetMode();