// dispatched function
static void AllocGrallocBufferSync(const GrallocParam& aParam,
                                   Monitor* aBarrier,
                                   bool* aDone)
{
  MonitorAutoLock autoMon(*aBarrier);

  sImageBridgeChildSingleton->AllocGrallocBufferNow(aParam.size,
                                                    aParam.format,
                                                    aParam.usage,
                                                    aParam.handle,
                                                    aParam.child);
  *aDone = true;
  aBarrier->NotifyAll();
}