summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/FileHandlerARC.cpp
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2014-06-29 21:35:46 -0400
committerLioncash <mathew1800@gmail.com>2014-06-29 21:35:46 -0400
commit0332d4d76fa40dc0017a81b5151628f0570e079e (patch)
tree5fd6c2365eae838ebaa7a62e8ddf5c00a812b498 /Source/Core/DiscIO/FileHandlerARC.cpp
parentd720e3ed0be9b897e1b87d0cc04831e573617df2 (diff)
parent3805c4967f00ccfc15ed2b5f84d3142786e3da32 (diff)
Merge pull request #539 from jordan-woyak/fix-extract-directory
Fix ISO Directory extraction.
Diffstat (limited to 'Source/Core/DiscIO/FileHandlerARC.cpp')
-rw-r--r--Source/Core/DiscIO/FileHandlerARC.cpp21
1 files changed, 7 insertions, 14 deletions
diff --git a/Source/Core/DiscIO/FileHandlerARC.cpp b/Source/Core/DiscIO/FileHandlerARC.cpp
index 6215b0a100..96bfaf9c57 100644
--- a/Source/Core/DiscIO/FileHandlerARC.cpp
+++ b/Source/Core/DiscIO/FileHandlerARC.cpp
@@ -192,26 +192,19 @@ size_t CARCFile::BuildFilenames(const size_t _FirstIndex, const size_t _LastInde
while (CurrentIndex < _LastIndex)
{
SFileInfo& rFileInfo = m_FileInfoVector[CurrentIndex];
- int uOffset = rFileInfo.m_NameOffset & 0xFFFFFF;
+ int const uOffset = rFileInfo.m_NameOffset & 0xFFFFFF;
+
+ rFileInfo.m_FullPath = _szDirectory + &_szNameTable[uOffset];
// check next index
if (rFileInfo.IsDirectory())
{
- if (_szDirectory.empty())
- rFileInfo.m_FullPath += StringFromFormat("%s/", &_szNameTable[uOffset]);
- else
- rFileInfo.m_FullPath += StringFromFormat("%s%s/", _szDirectory.c_str(), &_szNameTable[uOffset]);
-
- CurrentIndex = BuildFilenames(CurrentIndex + 1, (size_t) rFileInfo.m_FileSize, rFileInfo.m_FullPath, _szNameTable);
+ rFileInfo.m_FullPath += '/';
+ CurrentIndex = BuildFilenames(CurrentIndex + 1, (size_t)rFileInfo.m_FileSize, rFileInfo.m_FullPath, _szNameTable);
}
- else // This is a filename
+ else
{
- if (_szDirectory.empty())
- rFileInfo.m_FullPath += StringFromFormat("%s", &_szNameTable[uOffset]);
- else
- rFileInfo.m_FullPath += StringFromFormat("%s%s", _szDirectory.c_str(), &_szNameTable[uOffset]);
-
- CurrentIndex++;
+ ++CurrentIndex;
}
}