diff --git a/src/core/hle/service/services.cpp b/src/core/hle/service/services.cpp index 636f54ad49..0e1090118f 100644 --- a/src/core/hle/service/services.cpp +++ b/src/core/hle/service/services.cpp @@ -84,6 +84,8 @@ Services::Services(std::shared_ptr& sm, Core::System& system // BEGONE cold clones of lambdas, for I have merged you all into a SINGLE lambda instead of // spamming lambdas like it's some kind of lambda calculus class + kernel.RunOnGuestCoreProcess("vi", [&, token] { VI::LoopProcess(system, token); }).detach(); + // Avoid cold clones of lambdas -- succintly for (auto const& e : std::vector>{ {"audio", &Audio::LoopProcess}, {"FS", &FileSystem::LoopProcess}, @@ -92,11 +94,7 @@ Services::Services(std::shared_ptr& sm, Core::System& system {"Loader", &LDR::LoopProcess}, {"nvservices", &Nvidia::LoopProcess}, {"bsdsocket", &Sockets::LoopProcess}, - }) - kernel.RunOnHostCoreProcess(std::string(e.first), [&system, f = e.second] { f(system); }).detach(); - kernel.RunOnHostCoreProcess("vi", [&, token] { VI::LoopProcess(system, token); }).detach(); - // Avoid cold clones of lambdas -- succintly - for (auto const& e : std::vector>{ + // {"sm", &SM::LoopProcess}, {"account", &Account::LoopProcess}, {"am", &AM::LoopProcess},