diff options
| author | Léo Lam <leo@innovatetechnologi.es> | 2017-02-08 21:37:12 +0100 |
|---|---|---|
| committer | Léo Lam <leo@innovatetechnologi.es> | 2017-02-10 19:12:08 +0100 |
| commit | 7a1f676ef475c5d3843be3e0f625c97f259d55cd (patch) | |
| tree | df4ec1524287021dcdb33ce08db3b0d57a0193d9 /Source/Core/DiscIO/NANDContentLoader.cpp | |
| parent | 96e83b5d54a13fd768552d74aeaf95c0a999665f (diff) | |
Always use configured root when installing WAD
This prevents Dolphin from writing to /sys/uid.sys (on the host; root
partition) when installing a WAD before starting emulation, because
the session root is not initialized at that moment.
Incidentally, this also gets rid of a singleton.
Diffstat (limited to 'Source/Core/DiscIO/NANDContentLoader.cpp')
| -rw-r--r-- | Source/Core/DiscIO/NANDContentLoader.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/Source/Core/DiscIO/NANDContentLoader.cpp b/Source/Core/DiscIO/NANDContentLoader.cpp index b57f6eb0ea..639891d899 100644 --- a/Source/Core/DiscIO/NANDContentLoader.cpp +++ b/Source/Core/DiscIO/NANDContentLoader.cpp @@ -398,16 +398,11 @@ void CNANDContentLoader::RemoveTitle() const } } -cUIDsys::cUIDsys() -{ - UpdateLocation(); -} - -void cUIDsys::UpdateLocation() +cUIDsys::cUIDsys(Common::FromWhichRoot root) { m_Elements.clear(); m_LastUID = 0x00001000; - m_UidSys = File::GetUserPath(D_SESSION_WIIROOT_IDX) + "/sys/uid.sys"; + m_UidSys = Common::RootUserPath(root) + "/sys/uid.sys"; File::IOFile pFile(m_UidSys, "rb"); SElement Element; @@ -430,10 +425,6 @@ void cUIDsys::UpdateLocation() } } -cUIDsys::~cUIDsys() -{ -} - u32 cUIDsys::GetUIDFromTitle(u64 title_id) { for (auto& Element : m_Elements) @@ -541,7 +532,8 @@ u64 CNANDContentManager::Install_WiiWAD(const std::string& filename) return 0; } - cUIDsys::AccessInstance().AddTitle(title_id); + cUIDsys uid_sys{Common::FromWhichRoot::FROM_CONFIGURED_ROOT}; + uid_sys.AddTitle(title_id); ClearCache(); |
