summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Baptiste Queru <jbq@google.com>2012-08-20 09:40:11 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-08-20 09:40:11 -0700
commit21938749faf2c4dd0c77bee3dec1f7a85780c85a (patch)
tree0d36b74146db2a210f017f59312ece90f5e79948
parent6e820eec21917f8e25c40dbc8b972468535af0e8 (diff)
parent349149b52a424c212e33d165bc146bc0337ea4c4 (diff)
downloadframeworks_native-21938749faf2c4dd0c77bee3dec1f7a85780c85a.zip
frameworks_native-21938749faf2c4dd0c77bee3dec1f7a85780c85a.tar.gz
frameworks_native-21938749faf2c4dd0c77bee3dec1f7a85780c85a.tar.bz2
am 349149b5: Merge "Fix error trap in SurfaceTexture Client"
* commit '349149b52a424c212e33d165bc146bc0337ea4c4': Fix error trap in SurfaceTexture Client
-rw-r--r--libs/gui/SurfaceTextureClient.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/libs/gui/SurfaceTextureClient.cpp b/libs/gui/SurfaceTextureClient.cpp
index 36a81a6..f60f902 100644
--- a/libs/gui/SurfaceTextureClient.cpp
+++ b/libs/gui/SurfaceTextureClient.cpp
@@ -757,12 +757,16 @@ status_t SurfaceTextureClient::lock(
ALOGW_IF(res, "failed locking buffer (handle = %p)",
backBuffer->handle);
- mLockedBuffer = backBuffer;
- outBuffer->width = backBuffer->width;
- outBuffer->height = backBuffer->height;
- outBuffer->stride = backBuffer->stride;
- outBuffer->format = backBuffer->format;
- outBuffer->bits = vaddr;
+ if (res != 0) {
+ err = INVALID_OPERATION;
+ } else {
+ mLockedBuffer = backBuffer;
+ outBuffer->width = backBuffer->width;
+ outBuffer->height = backBuffer->height;
+ outBuffer->stride = backBuffer->stride;
+ outBuffer->format = backBuffer->format;
+ outBuffer->bits = vaddr;
+ }
}
}
return err;