From 0b3ad46a26dc3717260fa9347c77f673f3198606 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Fri, 2 Oct 2009 18:12:30 -0700 Subject: Attempt to fix [2152536] ANR in browser The ANR is caused by SurfaceFlinger waiting for buffers of a removed surface to become availlable. When it is removed from the current list, a Surface is marked as NO_INIT, which causes SF to return immediately in the above case. For some reason, the surface here wasn't marked as NO_INIT. This change makes the code more robust by always (irregadless or errors) setting the NO_INIT status in all code paths where a surface is removed from the list. Additionaly added more information in the logs, should this happen again. --- libs/surfaceflinger/Buffer.h | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'libs/surfaceflinger/Buffer.h') diff --git a/libs/surfaceflinger/Buffer.h b/libs/surfaceflinger/Buffer.h index 79f4eeb6a9..203da3bba8 100644 --- a/libs/surfaceflinger/Buffer.h +++ b/libs/surfaceflinger/Buffer.h @@ -20,20 +20,11 @@ #include #include -#include - -#include - #include #include -#include - #include - -#include #include -class copybit_image_t; struct android_native_buffer_t; namespace android { @@ -42,8 +33,6 @@ namespace android { // Buffer // =========================================================================== -class NativeBuffer; - class Buffer : public SurfaceBuffer { public: -- cgit v1.2.3-59-g8ed1b