Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a21bed3d authored by Marco Nelissen's avatar Marco Nelissen
Browse files

More OMX struct checking

These were lost due to bad merges.

Bug: 27207275
Change-Id: I2fd6fa0edda83ff8d5db07fce34db2f1df0a1735
parent 3b1a4359
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -172,6 +172,11 @@ void SoftVideoEncoderOMXComponent::updatePortParams() {

OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalSetPortParams(
        const OMX_PARAM_PORTDEFINITIONTYPE *port) {

    if (!isValidOMXParam(port)) {
        return OMX_ErrorBadParameter;
    }

    if (port->nPortIndex == kInputPortIndex) {
        mWidth = port->format.video.nFrameWidth;
        mHeight = port->format.video.nFrameHeight;
@@ -218,6 +223,10 @@ OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalSetParameter(
            const OMX_PARAM_COMPONENTROLETYPE *roleParams =
                (const OMX_PARAM_COMPONENTROLETYPE *)param;

            if (!isValidOMXParam(roleParams)) {
                return OMX_ErrorBadParameter;
            }

            if (strncmp((const char *)roleParams->cRole,
                        mComponentRole,
                        OMX_MAX_STRINGNAME_SIZE - 1)) {
@@ -243,6 +252,10 @@ OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalSetParameter(
            const OMX_VIDEO_PARAM_PORTFORMATTYPE* format =
                (const OMX_VIDEO_PARAM_PORTFORMATTYPE *)param;

            if (!isValidOMXParam(format)) {
                return OMX_ErrorBadParameter;
            }

            if (format->nPortIndex == kInputPortIndex) {
                if (format->eColorFormat == OMX_COLOR_FormatYUV420Planar ||
                    format->eColorFormat == OMX_COLOR_FormatYUV420SemiPlanar ||
@@ -272,6 +285,10 @@ OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalSetParameter(
            const StoreMetaDataInBuffersParams *storeParam =
                (const StoreMetaDataInBuffersParams *)param;

            if (!isValidOMXParam(storeParam)) {
                return OMX_ErrorBadParameter;
            }

            if (storeParam->nPortIndex == kOutputPortIndex) {
                return storeParam->bStoreMetaData ? OMX_ErrorUnsupportedSetting : OMX_ErrorNone;
            } else if (storeParam->nPortIndex != kInputPortIndex) {
@@ -306,6 +323,10 @@ OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalGetParameter(
            OMX_VIDEO_PARAM_PORTFORMATTYPE *formatParams =
                (OMX_VIDEO_PARAM_PORTFORMATTYPE *)param;

            if (!isValidOMXParam(formatParams)) {
                return OMX_ErrorBadParameter;
            }

            if (formatParams->nPortIndex == kInputPortIndex) {
                if (formatParams->nIndex >= NELEM(kSupportedColorFormats)) {
                    return OMX_ErrorNoMore;
@@ -331,6 +352,10 @@ OMX_ERRORTYPE SoftVideoEncoderOMXComponent::internalGetParameter(
            OMX_VIDEO_PARAM_PROFILELEVELTYPE *profileLevel =
                  (OMX_VIDEO_PARAM_PROFILELEVELTYPE *) param;

            if (!isValidOMXParam(profileLevel)) {
                return OMX_ErrorBadParameter;
            }

            if (profileLevel->nPortIndex != kOutputPortIndex) {
                ALOGE("Invalid port index: %u", profileLevel->nPortIndex);
                return OMX_ErrorUnsupportedIndex;