am 96dac84b: am 121a31ac: Merge change Id86beb99 into eclair

Merge commit '96dac84be4143d83b13648045b9af31ac0f81004' into eclair-mr2-plus-aosp

* commit '96dac84be4143d83b13648045b9af31ac0f81004':
  fix [2291418] Camera preview cannot work in Emulator
This commit is contained in:
Mathias Agopian
2009-12-02 18:09:22 -08:00
committed by Android Git Automerger

View File

@ -266,7 +266,16 @@ LayerBuffer::Buffer::Buffer(const ISurface::BufferHeap& buffers, ssize_t offset)
: mBufferHeap(buffers)
{
NativeBuffer& src(mNativeBuffer);
src.img.handle = 0;
src.crop.l = 0;
src.crop.t = 0;
src.crop.r = buffers.w;
src.crop.b = buffers.h;
src.img.w = buffers.hor_stride ?: buffers.w;
src.img.h = buffers.ver_stride ?: buffers.h;
src.img.format = buffers.format;
src.img.base = (void*)(intptr_t(buffers.heap->base()) + offset);
src.img.handle = 0;
gralloc_module_t const * module = LayerBuffer::getGrallocModule();
if (module && module->perform) {
@ -276,19 +285,12 @@ LayerBuffer::Buffer::Buffer(const ISurface::BufferHeap& buffers, ssize_t offset)
offset, buffers.heap->base(),
&src.img.handle);
if (err == NO_ERROR) {
src.crop.l = 0;
src.crop.t = 0;
src.crop.r = buffers.w;
src.crop.b = buffers.h;
src.img.w = buffers.hor_stride ?: buffers.w;
src.img.h = buffers.ver_stride ?: buffers.h;
src.img.format = buffers.format;
src.img.base = (void*)(intptr_t(buffers.heap->base()) + offset);
}
LOGE_IF(err, "CREATE_HANDLE_FROM_BUFFER (heapId=%d, size=%d, "
"offset=%ld, base=%p) failed (%s)",
buffers.heap->heapID(), buffers.heap->getSize(),
offset, buffers.heap->base(), strerror(-err));
}
}
}
LayerBuffer::Buffer::~Buffer()
{