summaryrefslogtreecommitdiffstats
path: root/libs
diff options
context:
space:
mode:
authorJamie Gennis <jgennis@google.com>2011-10-18 17:14:33 -0700
committerJamie Gennis <jgennis@google.com>2011-10-18 17:14:33 -0700
commit791e63829ce4a07b2d9dee6b7f166ddf0303e67a (patch)
tree1a87e51ad0dd1b0b89fcaec16d59aabb1357d172 /libs
parent5310a731eab664352044781d4b107b4837ea77ac (diff)
downloadframeworks_base-791e63829ce4a07b2d9dee6b7f166ddf0303e67a.zip
frameworks_base-791e63829ce4a07b2d9dee6b7f166ddf0303e67a.tar.gz
frameworks_base-791e63829ce4a07b2d9dee6b7f166ddf0303e67a.tar.bz2
SurfaceTexture: free buffers when disconnect fails
This change makes SurfaceTextureClient free its references to all the buffers even when the disconnect binder call to the SurfaceTexture fails. Bug: 5384823 Change-Id: Iad787fbae5fda4769546fd52276e4e4030c62be6
Diffstat (limited to 'libs')
-rw-r--r--libs/gui/SurfaceTextureClient.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/libs/gui/SurfaceTextureClient.cpp b/libs/gui/SurfaceTextureClient.cpp
index 0bee0f1..98fa171 100644
--- a/libs/gui/SurfaceTextureClient.cpp
+++ b/libs/gui/SurfaceTextureClient.cpp
@@ -409,9 +409,9 @@ int SurfaceTextureClient::connect(int api) {
int SurfaceTextureClient::disconnect(int api) {
LOGV("SurfaceTextureClient::disconnect");
Mutex::Autolock lock(mMutex);
+ freeAllBuffers();
int err = mSurfaceTexture->disconnect(api);
if (!err) {
- freeAllBuffers();
mReqFormat = 0;
mReqWidth = 0;
mReqHeight = 0;