summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorj4ck.fr0st <j4ck.fr0st@gmail.com>2010-09-11 10:41:57 +0000
committerj4ck.fr0st <j4ck.fr0st@gmail.com>2010-09-11 10:41:57 +0000
commit51cd032af3168aed08e50a37d7d5582dcf554016 (patch)
tree4557108a0b0811b5339c34d9fb6010eaa321638e /Source/Core
parent9d57903065a30ad261bfbd8005e4dd81927eb023 (diff)
Clear m_TitleIDs when opening Device_ES (Fixes Issue 3205)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6200 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
index 2d2fa61259..65229d666c 100644
--- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
+++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp
@@ -81,8 +81,10 @@ bool CWII_IPC_HLE_Device_es::Open(u32 _CommandAddress, u32 _Mode)
{
m_TitleID = m_pContentLoader->GetTitleID();
+ m_TitleIDs.clear();
DiscIO::cUIDsys::AccessInstance().GetTitleIDs(m_TitleIDs);
// uncomment if ES_GetOwnedTitlesCount / ES_GetOwnedTitles is implemented
+ // m_TitleIDsOwned.clear();
// DiscIO::cUIDsys::AccessInstance().GetTitleIDs(m_TitleIDsOwned, true);
}
else if (VolumeHandler::IsValid())
@@ -100,6 +102,8 @@ bool CWII_IPC_HLE_Device_es::Open(u32 _CommandAddress, u32 _Mode)
INFO_LOG(WII_IPC_ES, "Set default title to %08x/%08x", (u32)(m_TitleID>>32), (u32)m_TitleID);
Memory::Write_U32(GetDeviceID(), _CommandAddress+4);
+ if (m_Active)
+ INFO_LOG(WII_IPC_ES, "Device was ReOpened");
m_Active = true;
return true;
}
@@ -523,7 +527,7 @@ bool CWII_IPC_HLE_Device_es::IOCtlV(u32 _CommandAddress)
u64 TitleID = Memory::Read_U64(Buffer.InBuffer[0].m_Address);
const DiscIO::INANDContentLoader& Loader = DiscIO::CNANDContentManager::Access().GetNANDLoader(TitleID);
- _dbg_assert_(WII_IPC_ES, Loader.IsValid());
+ _dbg_assert_msg_(WII_IPC_ES, Loader.IsValid(), "Loader not valid for TitleID %08x/%08x", (u32)(TitleID >> 32), (u32)TitleID);
u32 TMDViewCnt = 0;
if (Loader.IsValid())
{
@@ -783,7 +787,7 @@ const DiscIO::INANDContentLoader& CWII_IPC_HLE_Device_es::AccessContentDevice(u6
m_NANDContent[_TitleID] = &DiscIO::CNANDContentManager::Access().GetNANDLoader(_TitleID);
- _dbg_assert_(WII_IPC_ES, m_NANDContent[_TitleID]->IsValid());
+ _dbg_assert_msg_(WII_IPC_ES, m_NANDContent[_TitleID]->IsValid(), "NandContent not valid for TitleID %08x/%08x", (u32)(_TitleID >> 32), (u32)_TitleID);
return *m_NANDContent[_TitleID];
}