/* static */ void GonkVideoDecoderManager::RecycleCallback(TextureClient* aClient, void* aClosure) { GonkVideoDecoderManager* videoManager = static_cast<GonkVideoDecoderManager*>(aClosure); GrallocTextureClientOGL* client = static_cast<GrallocTextureClientOGL*>(aClient); aClient->ClearRecycleCallback(); videoManager->PostReleaseVideoBuffer(client->GetMediaBuffer()); }
/* static */ void GonkVideoDecoderManager::RecycleCallback(TextureClient* aClient, void* aClosure) { MOZ_ASSERT(aClient && !aClient->IsDead()); GonkVideoDecoderManager* videoManager = static_cast<GonkVideoDecoderManager*>(aClosure); GrallocTextureClientOGL* client = static_cast<GrallocTextureClientOGL*>(aClient); aClient->ClearRecycleCallback(); FenceHandle handle = aClient->GetAndResetReleaseFenceHandle(); videoManager->PostReleaseVideoBuffer(client->GetMediaBuffer(), handle); }