Skip to content

Commit

Permalink
vidc: Generate FBD if genlock lock operation fails
Browse files Browse the repository at this point in the history
- Add missing call to generate FBD message if genlock_lock fails.
- Without this call, this particular buffer is never returned back
  to OMX IL client.

(cherry picked from commit cc417ab)

Change-Id: I080902f893cc5cfbc1d33cfacc42cc1fe9884128
CRs-Fixed: 332651
  • Loading branch information
Haynes Mathew George authored and Linux Build Service Account committed Jan 27, 2012
1 parent 3cac20b commit 67736d1
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion vidc/vdec/src/omx_vdec.cpp
Expand Up @@ -5618,7 +5618,11 @@ OMX_ERRORTYPE omx_vdec::fill_this_buffer_proxy(

if (ptr_respbuffer == NULL || ptr_outputbuffer == NULL)
{
return OMX_ErrorBadParameter;
DEBUG_PRINT_ERROR("resp buffer or outputbuffer is NULL");
buffer->nFilledLen = 0;
m_cb.FillBufferDone (hComp,m_app_data,buffer);
pending_output_buffers--;
return OMX_ErrorBadParameter;
}

memcpy (&fillbuffer.buffer,ptr_outputbuffer,\
Expand All @@ -5632,6 +5636,9 @@ OMX_ERRORTYPE omx_vdec::fill_this_buffer_proxy(
if (GENLOCK_NO_ERROR != genlock_lock_buffer(native_buffer[buffer - m_out_mem_ptr].nativehandle,
GENLOCK_WRITE_LOCK, GENLOCK_MAX_TIMEOUT)) {
DEBUG_PRINT_ERROR("Failed to acquire genlock");
buffer->nFilledLen = 0;
m_cb.FillBufferDone (hComp,m_app_data,buffer);
pending_output_buffers--;
return OMX_ErrorInsufficientResources;
} else {
native_buffer[buffer - m_out_mem_ptr].inuse = true;
Expand Down

0 comments on commit 67736d1

Please sign in to comment.