From 5a8f9012ee8bb9dc1ad14432b96a821f08802ee3 Mon Sep 17 00:00:00 2001 From: Andy McFadden Date: Thu, 4 Oct 2012 19:09:45 -0700 Subject: [PATCH] Tone down a fatal assert The new disconnectDisplay function doesn't handle virtual displays, but it may be called for them. Return without doing anything. Bug 7281786 Change-Id: I62607f2ae6073fa66b393f55932604aeb8e03566 --- services/surfaceflinger/DisplayHardware/HWComposer.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp index 597e5d630..dd9a762f9 100644 --- a/services/surfaceflinger/DisplayHardware/HWComposer.cpp +++ b/services/surfaceflinger/DisplayHardware/HWComposer.cpp @@ -686,8 +686,11 @@ status_t HWComposer::acquire(int disp) { } void HWComposer::disconnectDisplay(int disp) { - LOG_ALWAYS_FATAL_IF(disp < 0 || disp == HWC_DISPLAY_PRIMARY || - disp >= HWC_NUM_DISPLAY_TYPES); + LOG_ALWAYS_FATAL_IF(disp < 0 || disp == HWC_DISPLAY_PRIMARY); + if (disp >= HWC_NUM_DISPLAY_TYPES) { + // nothing to do for these yet + return; + } DisplayData& dd(mDisplayData[disp]); if (dd.list != NULL) { free(dd.list);