summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/Filesystem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/DiscIO/Filesystem.cpp')
-rw-r--r--Source/Core/DiscIO/Filesystem.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/Source/Core/DiscIO/Filesystem.cpp b/Source/Core/DiscIO/Filesystem.cpp
index c723569088..3ca1f70f04 100644
--- a/Source/Core/DiscIO/Filesystem.cpp
+++ b/Source/Core/DiscIO/Filesystem.cpp
@@ -2,6 +2,7 @@
// Licensed under GPLv2+
// Refer to the license.txt file included.
+#include <memory>
#include "DiscIO/Filesystem.h"
#include "DiscIO/FileSystemGCWii.h"
@@ -17,20 +18,17 @@ IFileSystem::~IFileSystem()
{}
-IFileSystem* CreateFileSystem(const IVolume* _rVolume)
+std::unique_ptr<IFileSystem> CreateFileSystem(const IVolume* volume)
{
- IFileSystem* pFileSystem = new CFileSystemGCWii(_rVolume);
+ std::unique_ptr<IFileSystem> filesystem = std::make_unique<CFileSystemGCWii>(volume);
- if (!pFileSystem)
+ if (!filesystem)
return nullptr;
- if (!pFileSystem->IsValid())
- {
- delete pFileSystem;
- pFileSystem = nullptr;
- }
+ if (!filesystem->IsValid())
+ filesystem.reset();
- return pFileSystem;
+ return filesystem;
}
} // namespace