am 8eb16af2: Merge "don\'t try to lock a buffer that wasn\'t allocated with SW usage bits" into gingerbread

Merge commit '8eb16af29303cda190133a1d220b9ecd9341e261' into gingerbread-plus-aosp

* commit '8eb16af29303cda190133a1d220b9ecd9341e261':
  don't try to lock a buffer that wasn't allocated with SW usage bits
This commit is contained in:
Mathias Agopian 2010-08-25 12:17:19 -07:00 committed by Android Git Automerger
commit 2091772e7c

View File

@ -196,12 +196,16 @@ void Layer::reloadTexture(const Region& dirty)
} else {
slowpath:
GGLSurface t;
status_t res = buffer->lock(&t, GRALLOC_USAGE_SW_READ_OFTEN);
LOGE_IF(res, "error %d (%s) locking buffer %p",
res, strerror(res), buffer.get());
if (res == NO_ERROR) {
mBufferManager.loadTexture(dirty, t);
buffer->unlock();
if (buffer->usage & GRALLOC_USAGE_SW_READ_MASK) {
status_t res = buffer->lock(&t, GRALLOC_USAGE_SW_READ_OFTEN);
LOGE_IF(res, "error %d (%s) locking buffer %p",
res, strerror(res), buffer.get());
if (res == NO_ERROR) {
mBufferManager.loadTexture(dirty, t);
buffer->unlock();
}
} else {
// we can't do anything
}
}
}