Merge "Return correct config from getActiveConfig()"
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 86e73c2..8b2f5e1 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -876,7 +876,16 @@
return BAD_VALUE;
}
- return display->getActiveConfig();
+ if (display->isPrimary()) {
+ std::lock_guard<std::mutex> lock(mActiveConfigLock);
+ if (mDesiredActiveConfigChanged) {
+ return mDesiredActiveConfig.configId;
+ } else {
+ return display->getActiveConfig();
+ }
+ } else {
+ return display->getActiveConfig();
+ }
}
void SurfaceFlinger::setDesiredActiveConfig(const ActiveConfigInfo& info) {