Merge "Fix a bug in SurfaceTexture::setBufferCount." into honeycomb

This commit is contained in:
Jamie Gennis 2011-01-10 12:30:33 -08:00 committed by Android (Google) Code Review
commit cc01b66468
2 changed files with 7 additions and 2 deletions

View File

@ -113,8 +113,11 @@ private:
int mBufferCount;
// mCurrentTexture is the buffer slot index of the buffer that is currently
// bound to the OpenGL texture. A value of INVALID_BUFFER_SLOT, indicating
// that no buffer is currently bound to the texture.
// bound to the OpenGL texture. It is initialized to INVALID_BUFFER_SLOT,
// indicating that no buffer slot is currently bound to the texture. Note,
// however, that a value of INVALID_BUFFER_SLOT does not necessarily mean
// that no buffer is bound to the texture. A call to setBufferCount will
// reset mCurrentTexture to INVALID_BUFFER_SLOT.
int mCurrentTexture;
// mLastQueued is the buffer slot index of the most recently enqueued buffer.

View File

@ -55,6 +55,8 @@ status_t SurfaceTexture::setBufferCount(int bufferCount) {
Mutex::Autolock lock(mMutex);
freeAllBuffers();
mBufferCount = bufferCount;
mCurrentTexture = INVALID_BUFFER_SLOT;
mLastQueued = INVALID_BUFFER_SLOT;
return OK;
}