summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Dong <jdong@google.com>2010-02-16 18:08:21 -0800
committerJames Dong <jdong@google.com>2010-02-16 18:08:21 -0800
commitea412a360e8823817fd4e38cd2044aa1bc4097fb (patch)
tree4dfc5acb4c5f65886c2db1dcb0e3883edf35b082
parent81080e8c6e5fbb1d3bb01d707d832a2f348c7268 (diff)
downloadomap3-ea412a360e8823817fd4e38cd2044aa1bc4097fb.tar.gz
Prevent video decoder component to overwrite client's set parameter request
This patch was originally from MOT/TI bug - 2281327
-rw-r--r--omx/video/src/openmax_il/video_decode/src/OMX_VideoDecoder.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/omx/video/src/openmax_il/video_decode/src/OMX_VideoDecoder.c b/omx/video/src/openmax_il/video_decode/src/OMX_VideoDecoder.c
index d4861d6..a9314ec 100644
--- a/omx/video/src/openmax_il/video_decode/src/OMX_VideoDecoder.c
+++ b/omx/video/src/openmax_il/video_decode/src/OMX_VideoDecoder.c
@@ -1336,8 +1336,11 @@ static OMX_ERRORTYPE VIDDEC_SetParameter (OMX_HANDLETYPE hComp,
OMX_PARAM_PORTDEFINITIONTYPE *pPortDefParam = (OMX_PARAM_PORTDEFINITIONTYPE *)pComponentParam;
OMX_PARAM_PORTDEFINITIONTYPE *pPortDef = pComponentPrivate->pInPortDef;
memcpy(pPortDef, pPortDefParam, sizeof(OMX_PARAM_PORTDEFINITIONTYPE));
- pPortDef->nBufferSize = pPortDef->format.video.nFrameWidth *
- pPortDef->format.video.nFrameHeight;
+ if ( pPortDef->nBufferSize == 0 )
+ {
+ pPortDef->nBufferSize = pPortDef->format.video.nFrameWidth *
+ pPortDef->format.video.nFrameHeight;
+ }
OMX_PRINT1(pComponentPrivate->dbg, "Set i/p size: %dx%d", pPortDefParam->format.video.nFrameWidth, pPortDefParam->format.video.nFrameHeight);
}