diff options
author | bunnei <bunneidev@gmail.com> | 2018-06-04 05:43:31 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2018-06-04 05:44:23 +0200 |
commit | afdd2f4cad44efd29ce38a724e4e5636fa90be7a (patch) | |
tree | 663814e7c8150e57f9f55f6a8aabeb7cf80cac6e | |
parent | am: ISelfController:LaunchableEvent should be sticky. (diff) | |
download | yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar.gz yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar.bz2 yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar.lz yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar.xz yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.tar.zst yuzu-afdd2f4cad44efd29ce38a724e4e5636fa90be7a.zip |
-rw-r--r-- | src/core/hle/service/am/am.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp index f9336192f..12954556d 100644 --- a/src/core/hle/service/am/am.cpp +++ b/src/core/hle/service/am/am.cpp @@ -442,7 +442,7 @@ public: {30, &ILibraryAppletAccessor::GetResult, "GetResult"}, {50, nullptr, "SetOutOfFocusApplicationSuspendingEnabled"}, {100, &ILibraryAppletAccessor::PushInData, "PushInData"}, - {101, nullptr, "PopOutData"}, + {101, &ILibraryAppletAccessor::PopOutData, "PopOutData"}, {102, nullptr, "PushExtraStorage"}, {103, nullptr, "PushInteractiveInData"}, {104, nullptr, "PopInteractiveOutData"}, @@ -494,6 +494,16 @@ private: NGLOG_DEBUG(Service_AM, "called"); } + void PopOutData(Kernel::HLERequestContext& ctx) { + IPC::ResponseBuilder rb{ctx, 2, 0, 1}; + rb.Push(RESULT_SUCCESS); + rb.PushIpcInterface<AM::IStorage>(std::move(storage_stack.top())); + + storage_stack.pop(); + + NGLOG_DEBUG(Service_AM, "called"); + } + std::stack<std::shared_ptr<AM::IStorage>> storage_stack; Kernel::SharedPtr<Kernel::Event> state_changed_event; }; |