diff options
-rw-r--r-- | base/src/portbase.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/base/src/portbase.cpp b/base/src/portbase.cpp index 4b33ed3..55a2494 100644 --- a/base/src/portbase.cpp +++ b/base/src/portbase.cpp @@ -1023,6 +1023,10 @@ OMX_ERRORTYPE PortBase::TransState(OMX_U8 transition) if (cbase->GetWorkingRole() != NULL && !strncmp (cbase->GetWorkingRole(),"video_decoder", 13 )) { ret = WaitPortBufferCompletionTimeout(800); //0.8s timeout + if (!nr_buffer_hdrs) { + // event is trigger by freeing buffer instead of allocating buffer + ret = OMX_ErrorBadParameter; + } if (ret != OMX_ErrorNone) { goto unlock; } |