diff options
author | Jamie Gennis <jgennis@google.com> | 2011-10-19 21:14:13 -0700 |
---|---|---|
committer | Jamie Gennis <jgennis@google.com> | 2011-10-19 21:22:19 -0700 |
commit | b1d666f5cb555d135eb69e005e88a03330bbb54c (patch) | |
tree | 573c9d484c210cfc7104d94f2f630cae0b70bb01 /media/libstagefright/include/OMXNodeInstance.h | |
parent | 3c57859f03ce9257128e3b2cd29a906b8f9a6aa5 (diff) | |
download | frameworks_av-b1d666f5cb555d135eb69e005e88a03330bbb54c.zip frameworks_av-b1d666f5cb555d135eb69e005e88a03330bbb54c.tar.gz frameworks_av-b1d666f5cb555d135eb69e005e88a03330bbb54c.tar.bz2 |
Stagefright: idle OMX after ANW errors
This change fixes an issue in Stagefright where the state of an OMXCodec
object can get out of sync with the state of the OMX component. In
particular, if one of the ANativeWindow functions failed and put the
OMXCodec into the ERROR state, this would cause Stagefright to skip
doing the Executing -> Idle transition. Without this transition the
freeBuffersOnPort call would never be made, and the MediaBuffers would
end up being leaked (which would also leak the Gralloc buffers they
reference).
Bug: 5333695
Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
Diffstat (limited to 'media/libstagefright/include/OMXNodeInstance.h')
-rw-r--r-- | media/libstagefright/include/OMXNodeInstance.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/media/libstagefright/include/OMXNodeInstance.h b/media/libstagefright/include/OMXNodeInstance.h index 1ccf50d..47ca579 100644 --- a/media/libstagefright/include/OMXNodeInstance.h +++ b/media/libstagefright/include/OMXNodeInstance.h @@ -49,6 +49,8 @@ struct OMXNodeInstance { status_t getConfig(OMX_INDEXTYPE index, void *params, size_t size); status_t setConfig(OMX_INDEXTYPE index, const void *params, size_t size); + status_t getState(OMX_STATETYPE* state); + status_t enableGraphicBuffers(OMX_U32 portIndex, OMX_BOOL enable); status_t getGraphicBufferUsage(OMX_U32 portIndex, OMX_U32* usage); |