merge in ics-mr0-release history after reset to ics-mr0
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::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;