From 09e024fe9a8dd9646e053275dd636301a9d463f0 Mon Sep 17 00:00:00 2001 From: Marco Nelissen Date: Fri, 11 Mar 2016 14:40:17 -0800 Subject: [PATCH] DO NOT MERGE Don't reject "thumbnail mode" setConfig Bug: 27207275 Change-Id: I35f6bf5b407869a9479feaf1b5beef7b68d04509 --- media/libmedia/IOMX.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/media/libmedia/IOMX.cpp b/media/libmedia/IOMX.cpp index 1bc3c49a95..1b7381dd71 100644 --- a/media/libmedia/IOMX.cpp +++ b/media/libmedia/IOMX.cpp @@ -604,7 +604,9 @@ status_t BnOMX::onTransact( void *params = NULL; size_t pageSize = 0; size_t allocSize = 0; - if (code != SET_INTERNAL_OPTION && size < 8) { + // this only applies to a subset of devices, and was obsoleted in M + bool mightBeThumbnailMode = (code == SET_CONFIG && size == sizeof(OMX_BOOL)); + if (!mightBeThumbnailMode && (code != SET_INTERNAL_OPTION && size < 8)) { // we expect the structure to contain at least the size and // version, 8 bytes total ALOGE("b/27207275 (%zu)", size); @@ -626,7 +628,8 @@ status_t BnOMX::onTransact( } else { err = NOT_ENOUGH_DATA; OMX_U32 declaredSize = *(OMX_U32*)params; - if (code != SET_INTERNAL_OPTION && declaredSize > size) { + if (!mightBeThumbnailMode && + code != SET_INTERNAL_OPTION && declaredSize > size) { // the buffer says it's bigger than it actually is ALOGE("b/27207275 (%u/%zu)", declaredSize, size); android_errorWriteLog(0x534e4554, "27207275"); -- 2.11.0