diff options
| author | Admiral H. Curtiss <pikachu025@gmail.com> | 2021-09-22 02:57:31 +0200 |
|---|---|---|
| committer | Admiral H. Curtiss <pikachu025@gmail.com> | 2021-10-23 16:51:45 +0200 |
| commit | f8611f71395f0dc469582c8cdfce7c601c635b00 (patch) | |
| tree | c5f217be0f0215a94ad90261de456127c1f201d8 /Source/Core/DiscIO/DirectoryBlob.cpp | |
| parent | b7a9cc37b1872dbd8e5f2ca8e3f715e546798433 (diff) | |
DiscIO/DirectoryBlob: Add a content source that reads data from a DiscIO::Volume.
Diffstat (limited to 'Source/Core/DiscIO/DirectoryBlob.cpp')
| -rw-r--r-- | Source/Core/DiscIO/DirectoryBlob.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Source/Core/DiscIO/DirectoryBlob.cpp b/Source/Core/DiscIO/DirectoryBlob.cpp index e76fa7ad27..c86b0396a2 100644 --- a/Source/Core/DiscIO/DirectoryBlob.cpp +++ b/Source/Core/DiscIO/DirectoryBlob.cpp @@ -123,6 +123,15 @@ bool DiscContent::Read(u64* offset, u64* length, u8** buffer) const return false; } } + else if (std::holds_alternative<ContentVolume>(m_content_source)) + { + const auto& source = std::get<ContentVolume>(m_content_source); + if (!source.m_volume->Read(source.m_offset + offset_in_content, bytes_to_read, *buffer, + source.m_partition)) + { + return false; + } + } else { PanicAlertFmt("DirectoryBlob: Invalid content source in DiscContent."); |
