diff options
author | David Marcec <dmarcecguzman@gmail.com> | 2018-11-07 08:01:33 +0100 |
---|---|---|
committer | David Marcec <dmarcecguzman@gmail.com> | 2018-11-07 08:01:33 +0100 |
commit | 41e99d8880f4946256344d06b732412ca16c9a13 (patch) | |
tree | f7cb2af97284ae6e7c73db24634a36dd73d42698 /src/core/hle/service/am/applet_oe.cpp | |
parent | Merge pull request #1649 from degasus/split_resource_manager (diff) | |
download | yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar.gz yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar.bz2 yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar.lz yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar.xz yuzu-41e99d8880f4946256344d06b732412ca16c9a13.tar.zst yuzu-41e99d8880f4946256344d06b732412ca16c9a13.zip |
Diffstat (limited to 'src/core/hle/service/am/applet_oe.cpp')
-rw-r--r-- | src/core/hle/service/am/applet_oe.cpp | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/core/hle/service/am/applet_oe.cpp b/src/core/hle/service/am/applet_oe.cpp index 60717afd9..20c8d5fff 100644 --- a/src/core/hle/service/am/applet_oe.cpp +++ b/src/core/hle/service/am/applet_oe.cpp @@ -12,8 +12,10 @@ namespace Service::AM { class IApplicationProxy final : public ServiceFramework<IApplicationProxy> { public: - explicit IApplicationProxy(std::shared_ptr<NVFlinger::NVFlinger> nvflinger) - : ServiceFramework("IApplicationProxy"), nvflinger(std::move(nvflinger)) { + explicit IApplicationProxy(std::shared_ptr<NVFlinger::NVFlinger> nvflinger, + std::shared_ptr<AppletMessageQueue> msg_queue) + : ServiceFramework("IApplicationProxy"), nvflinger(std::move(nvflinger)), + msg_queue(std::move(msg_queue)) { // clang-format off static const FunctionInfo functions[] = { {0, &IApplicationProxy::GetCommonStateGetter, "GetCommonStateGetter"}, @@ -70,7 +72,7 @@ private: void GetCommonStateGetter(Kernel::HLERequestContext& ctx) { IPC::ResponseBuilder rb{ctx, 2, 0, 1}; rb.Push(RESULT_SUCCESS); - rb.PushIpcInterface<ICommonStateGetter>(); + rb.PushIpcInterface<ICommonStateGetter>(msg_queue); LOG_DEBUG(Service_AM, "called"); } @@ -89,17 +91,20 @@ private: } std::shared_ptr<NVFlinger::NVFlinger> nvflinger; + std::shared_ptr<AppletMessageQueue> msg_queue; }; void AppletOE::OpenApplicationProxy(Kernel::HLERequestContext& ctx) { IPC::ResponseBuilder rb{ctx, 2, 0, 1}; rb.Push(RESULT_SUCCESS); - rb.PushIpcInterface<IApplicationProxy>(nvflinger); + rb.PushIpcInterface<IApplicationProxy>(nvflinger, msg_queue); LOG_DEBUG(Service_AM, "called"); } -AppletOE::AppletOE(std::shared_ptr<NVFlinger::NVFlinger> nvflinger) - : ServiceFramework("appletOE"), nvflinger(std::move(nvflinger)) { +AppletOE::AppletOE(std::shared_ptr<NVFlinger::NVFlinger> nvflinger, + std::shared_ptr<AppletMessageQueue> msg_queue) + : ServiceFramework("appletOE"), nvflinger(std::move(nvflinger)), + msg_queue(std::move(msg_queue)) { static const FunctionInfo functions[] = { {0, &AppletOE::OpenApplicationProxy, "OpenApplicationProxy"}, }; @@ -108,4 +113,8 @@ AppletOE::AppletOE(std::shared_ptr<NVFlinger::NVFlinger> nvflinger) AppletOE::~AppletOE() = default; +const std::shared_ptr<AppletMessageQueue>& AppletOE::GetMessageQueue() const { + return msg_queue; +} + } // namespace Service::AM |