diff options
author | Lioncash <mathew1800@gmail.com> | 2018-10-24 15:37:29 +0200 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2018-10-24 16:39:31 +0200 |
commit | bed2d6c425c649ff587b80d617597f3eca359da1 (patch) | |
tree | 97d8b3f809d25a10bda5871f15ac4d2c233756de /src/core | |
parent | Merge pull request #1551 from ogniK5377/improved-svcbreak (diff) | |
download | yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar.gz yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar.bz2 yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar.lz yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar.xz yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.tar.zst yuzu-bed2d6c425c649ff587b80d617597f3eca359da1.zip |
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/hle/service/nfp/nfp.cpp | 6 | ||||
-rw-r--r-- | src/core/hle/service/nfp/nfp.h | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/core/hle/service/nfp/nfp.cpp b/src/core/hle/service/nfp/nfp.cpp index 9a4eb9301..c1af878fe 100644 --- a/src/core/hle/service/nfp/nfp.cpp +++ b/src/core/hle/service/nfp/nfp.cpp @@ -328,13 +328,15 @@ void Module::Interface::CreateUserInterface(Kernel::HLERequestContext& ctx) { rb.PushIpcInterface<IUser>(*this); } -void Module::Interface::LoadAmiibo(const std::vector<u8>& buffer) { +bool Module::Interface::LoadAmiibo(const std::vector<u8>& buffer) { std::lock_guard<std::recursive_mutex> lock(HLE::g_hle_lock); if (buffer.size() < sizeof(AmiiboFile)) { - return; // Failed to load file + return false; } + std::memcpy(&amiibo, buffer.data(), sizeof(amiibo)); nfc_tag_load->Signal(); + return true; } const Kernel::SharedPtr<Kernel::Event>& Module::Interface::GetNFCEvent() const { return nfc_tag_load; diff --git a/src/core/hle/service/nfp/nfp.h b/src/core/hle/service/nfp/nfp.h index 46370dedd..5c0ae8a54 100644 --- a/src/core/hle/service/nfp/nfp.h +++ b/src/core/hle/service/nfp/nfp.h @@ -32,7 +32,7 @@ public: static_assert(sizeof(AmiiboFile) == 0x94, "AmiiboFile is an invalid size"); void CreateUserInterface(Kernel::HLERequestContext& ctx); - void LoadAmiibo(const std::vector<u8>& buffer); + bool LoadAmiibo(const std::vector<u8>& buffer); const Kernel::SharedPtr<Kernel::Event>& GetNFCEvent() const; const AmiiboFile& GetAmiiboBuffer() const; |