Loading services/surfaceflinger/SurfaceFlinger.cpp +3 −2 Original line number Original line Diff line number Diff line Loading @@ -2154,7 +2154,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) // (ie: in drawing state but not in current state) // (ie: in drawing state but not in current state) // also handle displays that changed // also handle displays that changed // (ie: displays that are in both lists) // (ie: displays that are in both lists) for (size_t i=0 ; i<dc ; i++) { for (size_t i=0 ; i<dc ;) { const ssize_t j = curr.indexOfKey(draw.keyAt(i)); const ssize_t j = curr.indexOfKey(draw.keyAt(i)); if (j < 0) { if (j < 0) { // in drawing state but not in current state // in drawing state but not in current state Loading Loading @@ -2189,7 +2189,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) hw->disconnect(getHwComposer()); hw->disconnect(getHwComposer()); mDisplays.removeItem(display); mDisplays.removeItem(display); mDrawingState.displays.removeItemsAt(i); mDrawingState.displays.removeItemsAt(i); dc--; i--; dc--; // at this point we must loop to the next item // at this point we must loop to the next item continue; continue; } } Loading @@ -2211,6 +2211,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) } } } } } } ++i; } } // find displays that were added // find displays that were added Loading Loading
services/surfaceflinger/SurfaceFlinger.cpp +3 −2 Original line number Original line Diff line number Diff line Loading @@ -2154,7 +2154,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) // (ie: in drawing state but not in current state) // (ie: in drawing state but not in current state) // also handle displays that changed // also handle displays that changed // (ie: displays that are in both lists) // (ie: displays that are in both lists) for (size_t i=0 ; i<dc ; i++) { for (size_t i=0 ; i<dc ;) { const ssize_t j = curr.indexOfKey(draw.keyAt(i)); const ssize_t j = curr.indexOfKey(draw.keyAt(i)); if (j < 0) { if (j < 0) { // in drawing state but not in current state // in drawing state but not in current state Loading Loading @@ -2189,7 +2189,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) hw->disconnect(getHwComposer()); hw->disconnect(getHwComposer()); mDisplays.removeItem(display); mDisplays.removeItem(display); mDrawingState.displays.removeItemsAt(i); mDrawingState.displays.removeItemsAt(i); dc--; i--; dc--; // at this point we must loop to the next item // at this point we must loop to the next item continue; continue; } } Loading @@ -2211,6 +2211,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags) } } } } } } ++i; } } // find displays that were added // find displays that were added Loading