From 6107e39aec7065646ec1da2ac929c600f290d214 Mon Sep 17 00:00:00 2001 From: Saurabh Shah Date: Thu, 24 May 2012 11:38:11 -0700 Subject: [PATCH] Fix incorrect video overlay status update. Status should be set to PREPARE_TO_CLOSE only if its OPEN. Devices which rely on the status being CLOSED, if overlay is unavailable, can crash. (cherry picked from commit a6ee9945dedde6f2d119f0bdd8724fed20781f0e) Conflicts: libhwcomposer/badger/hwcomposer.cpp Change-Id: Iddf0ba1cc142e02fcf906d3b31f8f44a65def316 Conflicts: libhwcomposer/hwcomposer.cpp --- libhwcomposer/hwcomposer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libhwcomposer/hwcomposer.cpp b/libhwcomposer/hwcomposer.cpp index 6250218..0fe1450 100644 --- a/libhwcomposer/hwcomposer.cpp +++ b/libhwcomposer/hwcomposer.cpp @@ -1670,8 +1670,8 @@ static int hwc_set(hwc_composer_device_t *dev, } } } else { - ctx->hwcOverlayStatus = HWC_OVERLAY_PREPARE_TO_CLOSE; - unlockPreviousOverlayBuffer(ctx); + if (ctx->hwcOverlayStatus == HWC_OVERLAY_OPEN) + ctx->hwcOverlayStatus = HWC_OVERLAY_PREPARE_TO_CLOSE; }