bool RunTask(JSContext* aCx) override { sRilConsumers.EnsureLengthAtLeast(mClientId + 1); MOZ_ASSERT(!sRilConsumers[mClientId]); auto rilConsumer = MakeUnique<RilConsumer>(); nsresult rv = rilConsumer->ConnectWorkerToRIL(aCx); if (NS_FAILED(rv)) { return false; } rv = rilConsumer->Register(mClientId, mDispatcher); if (NS_FAILED(rv)) { return false; } sRilConsumers[mClientId] = Move(rilConsumer); return true; }