summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSunita Nadampalli <sunitan@ti.com>2016-06-09 16:13:28 -0500
committerSunita Nadampalli <sunitan@ti.com>2016-06-09 16:13:28 -0500
commitad5d6e10a1e188b89e182373621e08e87cc0b792 (patch)
tree0491b7b12c8a8e98b90bd003507fa2ecb68e8661
parent391d6f47e6bcd4e33c269bf07cad72f319727d58 (diff)
downloaddra7xx-ad5d6e10a1e188b89e182373621e08e87cc0b792.tar.gz
OMX: VideoEncoder: Fix Name initialization
Fix logic for name assignment to avoid memory corruptions. Change-Id: I1da5106e855cc9d0b26c77d1f829ffac63ce4b05 Signed-off-by: Sunita Nadampalli <sunitan@ti.com>
-rw-r--r--omx/videoencode/omx_h264_enc/src/omx_H264videoencoder.c6
-rw-r--r--omx/videoencode/omx_h264_enc/src/omx_H264videoencoderutils.c6
2 files changed, 11 insertions, 1 deletions
diff --git a/omx/videoencode/omx_h264_enc/src/omx_H264videoencoder.c b/omx/videoencode/omx_h264_enc/src/omx_H264videoencoder.c
index 753661c..7e06f0f 100644
--- a/omx/videoencode/omx_h264_enc/src/omx_H264videoencoder.c
+++ b/omx/videoencode/omx_h264_enc/src/omx_H264videoencoder.c
@@ -2117,6 +2117,12 @@ static OMX_ERRORTYPE OMXH264VE_ComponentDeinit(OMX_HANDLETYPE hComponent)
OMXBase_UtilCleanupIfError(hComponent);
+
+ if( pH264VEComp->sBase.cComponentName ) {
+ OSAL_Free(pH264VEComp->sBase.cComponentName);
+ pH264VEComp->sBase.cComponentName = NULL;
+ }
+
/* Calling OMX Base Component Deinit */
OSAL_Info("Call BaseComponent Deinit");
eError = OMXBase_ComponentDeinit(hComponent);
diff --git a/omx/videoencode/omx_h264_enc/src/omx_H264videoencoderutils.c b/omx/videoencode/omx_h264_enc/src/omx_H264videoencoderutils.c
index 383b5e9..4fe289c 100644
--- a/omx/videoencode/omx_h264_enc/src/omx_H264videoencoderutils.c
+++ b/omx/videoencode/omx_h264_enc/src/omx_H264videoencoderutils.c
@@ -70,7 +70,11 @@ OMX_ERRORTYPE OMXH264VE_InitFields(OMX_HANDLETYPE hComponent)
OMX_BASE_CHK_VERSION(pHandle, OMX_COMPONENTTYPE, eError);
pH264VEComp = (OMXH264VidEncComp *)pHandle->pComponentPrivate;
- pH264VEComp->sBase.cComponentName = OMX_H264VE_COMP_NAME;
+
+ pH264VEComp->sBase.cComponentName = (OMX_STRING )OSAL_Malloc(sizeof(OMX_U8) * OMX_MAX_STRINGNAME_SIZE);
+ OMX_CHECK(pH264VEComp->sBase.cComponentName != NULL, OMX_ErrorInsufficientResources);
+
+ strcpy(pH264VEComp->sBase.cComponentName, OMX_H264VE_COMP_NAME);
/* Fill component's version, this may not be same as the OMX Specification version */
pH264VEComp->sBase.nComponentVersion.s.nVersionMajor = OMX_H264VE_COMP_VERSION_MAJOR;