/* static */ FunctionBrokerChild* FunctionBrokerChild::GetInstance() { MOZ_RELEASE_ASSERT( XRE_IsPluginProcess(), "FunctionBrokerChild can only be used in plugin processes"); MOZ_ASSERT(sInstance, "Must initialize FunctionBrokerChild before using it"); return sInstance; }
/* static */ bool FunctionBrokerChild::Initialize(Endpoint<PFunctionBrokerChild>&& aBrokerEndpoint) { MOZ_RELEASE_ASSERT(XRE_IsPluginProcess(), "FunctionBrokerChild can only be used in plugin processes"); MOZ_ASSERT(!sInstance); FunctionBrokerThread* thread = FunctionBrokerThread::Create(); if (!thread) { return false; } sInstance = new FunctionBrokerChild(thread, std::move(aBrokerEndpoint)); return true; }