am: Implement ILibraryAppletAccessor::PopOutData.

This commit is contained in:
bunnei 2018-06-03 23:43:31 -04:00
parent df4336a85e
commit afdd2f4cad

View file

@ -442,7 +442,7 @@ public:
{30, &ILibraryAppletAccessor::GetResult, "GetResult"}, {30, &ILibraryAppletAccessor::GetResult, "GetResult"},
{50, nullptr, "SetOutOfFocusApplicationSuspendingEnabled"}, {50, nullptr, "SetOutOfFocusApplicationSuspendingEnabled"},
{100, &ILibraryAppletAccessor::PushInData, "PushInData"}, {100, &ILibraryAppletAccessor::PushInData, "PushInData"},
{101, nullptr, "PopOutData"}, {101, &ILibraryAppletAccessor::PopOutData, "PopOutData"},
{102, nullptr, "PushExtraStorage"}, {102, nullptr, "PushExtraStorage"},
{103, nullptr, "PushInteractiveInData"}, {103, nullptr, "PushInteractiveInData"},
{104, nullptr, "PopInteractiveOutData"}, {104, nullptr, "PopInteractiveOutData"},
@ -494,6 +494,16 @@ private:
NGLOG_DEBUG(Service_AM, "called"); 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; std::stack<std::shared_ptr<AM::IStorage>> storage_stack;
Kernel::SharedPtr<Kernel::Event> state_changed_event; Kernel::SharedPtr<Kernel::Event> state_changed_event;
}; };