summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-07-22 01:11:50 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-07-22 01:11:50 +0000
commited4ebe7f6463013dd86a9ba1c945a693c83a90d4 (patch)
treef10470652510879e5c75a499cfc158a3c9a6bc27
parentbdb96e54ed40ebcafc9ca2e5a9148ccbb5c503a2 (diff)
parente02b9171e029f07e3949031947124c164de5bd91 (diff)
downloadgs101-ed4ebe7f6463013dd86a9ba1c945a693c83a90d4.tar.gz
Snap for 7571196 from e02b9171e029f07e3949031947124c164de5bd91 to sc-v2-release
Change-Id: I7ff351d2a577750fb1cd11a5c9508dc309c28e39
-rw-r--r--libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp
index fbdd166..fee339a 100644
--- a/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp
+++ b/libhwc2.1/libmaindisplay/ExynosPrimaryDisplayModule.cpp
@@ -397,8 +397,11 @@ int32_t ExynosPrimaryDisplayModule::DisplaySceneInfo::setLayerDataMappingInfo(
layer, index);
return -EINVAL;
}
- uint32_t oldPlaneId = prev_layerDataMappingInfo.count(layer) != 0 ?
- prev_layerDataMappingInfo[layer].planeId : UINT_MAX;
+ // if assigned displaycolor dppIdx changes, do not reuse it (force plane color update).
+ uint32_t oldPlaneId = prev_layerDataMappingInfo.count(layer) != 0 &&
+ prev_layerDataMappingInfo[layer].dppIdx != index
+ ? prev_layerDataMappingInfo[layer].planeId
+ : UINT_MAX;
layerDataMappingInfo.insert(std::make_pair(layer, LayerMappingInfo{ index, oldPlaneId }));
return NO_ERROR;