Преглед изворни кода

Merge pull request #4193 from ogniK5377/GetIndirectLayerConsumerHandle-stub

am: Stub GetIndirectLayerConsumerHandle
bunnei пре 6 година
родитељ
комит
b13fd9e65a
1 измењених фајлова са 13 додато и 1 уклоњено
  1. 13 1
      src/core/hle/service/am/am.cpp

+ 13 - 1
src/core/hle/service/am/am.cpp

@@ -841,7 +841,7 @@ public:
             {110, nullptr, "NeedsToExitProcess"},
             {110, nullptr, "NeedsToExitProcess"},
             {120, nullptr, "GetLibraryAppletInfo"},
             {120, nullptr, "GetLibraryAppletInfo"},
             {150, nullptr, "RequestForAppletToGetForeground"},
             {150, nullptr, "RequestForAppletToGetForeground"},
-            {160, nullptr, "GetIndirectLayerConsumerHandle"},
+            {160, &ILibraryAppletAccessor::GetIndirectLayerConsumerHandle, "GetIndirectLayerConsumerHandle"},
         };
         };
         // clang-format on
         // clang-format on
 
 
@@ -960,6 +960,18 @@ private:
         rb.PushCopyObjects(applet->GetBroker().GetInteractiveDataEvent());
         rb.PushCopyObjects(applet->GetBroker().GetInteractiveDataEvent());
     }
     }
 
 
+    void GetIndirectLayerConsumerHandle(Kernel::HLERequestContext& ctx) {
+        LOG_WARNING(Service_AM, "(STUBBED) called");
+
+        // We require a non-zero handle to be valid. Using 0xdeadbeef allows us to trace if this is
+        // actually used anywhere
+        constexpr u64 handle = 0xdeadbeef;
+
+        IPC::ResponseBuilder rb{ctx, 4};
+        rb.Push(RESULT_SUCCESS);
+        rb.Push(handle);
+    }
+
     std::shared_ptr<Applets::Applet> applet;
     std::shared_ptr<Applets::Applet> applet;
 };
 };