summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/GLUtils.cpp
diff options
context:
space:
mode:
authorNicolas Roard <nicolasroard@google.com>2011-06-21 16:21:55 -0700
committerNicolas Roard <nicolasroard@google.com>2011-07-14 18:16:39 -0700
commit3c131605fca8e29a88fdc4923d86bdc3f40adb2b (patch)
tree440bd04fb01b43ed995348f579e70d668fe52a85 /Source/WebCore/platform/graphics/android/GLUtils.cpp
parent5dcd286d3e3e60f6a090f775a1fdceb40f578b75 (diff)
downloadexternal_webkit-3c131605fca8e29a88fdc4923d86bdc3f40adb2b.zip
external_webkit-3c131605fca8e29a88fdc4923d86bdc3f40adb2b.tar.gz
external_webkit-3c131605fca8e29a88fdc4923d86bdc3f40adb2b.tar.bz2
Implements tiled layers. We remove all the existing code in LayerAndroid
related to the old texture management and introduce two new classes: - PaintedSurface, used as a placeholder ui-side for the regularly changing LayerAndroid - TiledTexture, implementing the tiling of PaintedSurface using a set of BaseTile bug:4580444 bug:3392331 Change-Id: I0daa079d2acce49f3baa8c312ea0b0dd457ccd5c
Diffstat (limited to 'Source/WebCore/platform/graphics/android/GLUtils.cpp')
-rw-r--r--Source/WebCore/platform/graphics/android/GLUtils.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/WebCore/platform/graphics/android/GLUtils.cpp b/Source/WebCore/platform/graphics/android/GLUtils.cpp
index e32f1e9..1f04ff5 100644
--- a/Source/WebCore/platform/graphics/android/GLUtils.cpp
+++ b/Source/WebCore/platform/graphics/android/GLUtils.cpp
@@ -394,6 +394,11 @@ void GLUtils::updateSurfaceTextureWithBitmap(TextureInfo* texture, int x, int y,
int status = ANW->dequeueBuffer(ANW.get(), &anb);
checkSurfaceTextureError("dequeueBuffer", status);
+ if (status != NO_ERROR) { // FIXME: add proper error handling!
+ native_window_set_buffer_count(ANW.get(), 3);
+ return;
+ }
+
sp<android::GraphicBuffer> buf(new android::GraphicBuffer(anb, false));
status |= ANW->lockBuffer(ANW.get(), buf->getNativeBuffer());
checkSurfaceTextureError("lockBuffer", status);