summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Lioncash2018-09-19 14:16:22 -0400
committerGravatar Lioncash2018-09-19 14:22:37 -0400
commit2752183883604673e5058a3a6f62defcdca49a72 (patch)
treef475ccc696f50a34016f788412daa868c2759dd8 /src
parentnax: Avoid re-parsing NAX data with GetFileType() (diff)
downloadyuzu-2752183883604673e5058a3a6f62defcdca49a72.tar.gz
yuzu-2752183883604673e5058a3a6f62defcdca49a72.tar.xz
yuzu-2752183883604673e5058a3a6f62defcdca49a72.zip
xts_archive: Make AsNCA() return a std::unique_ptr instead of a std::shared_ptr
std::shared_ptr isn't strictly necessary here and is only ever used in contexts where the object doesn't depend on being shared. This also makes the interface more flexible, as it's possible to create a std::shared_ptr from a std::unique_ptr (std::shared_ptr has a constructor that accepts a std::unique_ptr), but not the other way around.
Diffstat (limited to 'src')
-rw-r--r--src/core/file_sys/xts_archive.cpp4
-rw-r--r--src/core/file_sys/xts_archive.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/core/file_sys/xts_archive.cpp b/src/core/file_sys/xts_archive.cpp
index 55257da2e..6935d2fa2 100644
--- a/src/core/file_sys/xts_archive.cpp
+++ b/src/core/file_sys/xts_archive.cpp
@@ -138,9 +138,9 @@ VirtualFile NAX::GetDecrypted() const {
138 return dec_file; 138 return dec_file;
139} 139}
140 140
141std::shared_ptr<NCA> NAX::AsNCA() const { 141std::unique_ptr<NCA> NAX::AsNCA() const {
142 if (type == NAXContentType::NCA) 142 if (type == NAXContentType::NCA)
143 return std::make_shared<NCA>(GetDecrypted()); 143 return std::make_unique<NCA>(GetDecrypted());
144 return nullptr; 144 return nullptr;
145} 145}
146 146
diff --git a/src/core/file_sys/xts_archive.h b/src/core/file_sys/xts_archive.h
index 0dd0536f1..6e2fc4d2e 100644
--- a/src/core/file_sys/xts_archive.h
+++ b/src/core/file_sys/xts_archive.h
@@ -38,7 +38,7 @@ public:
38 38
39 VirtualFile GetDecrypted() const; 39 VirtualFile GetDecrypted() const;
40 40
41 std::shared_ptr<NCA> AsNCA() const; 41 std::unique_ptr<NCA> AsNCA() const;
42 42
43 NAXContentType GetContentType() const; 43 NAXContentType GetContentType() const;
44 44