am 121a31ac: Merge change Id86beb99 into eclair

Merge commit '121a31ac3901fcb81c808da2b4a9a7cf66c12b7c' into eclair-mr2

* commit '121a31ac3901fcb81c808da2b4a9a7cf66c12b7c':
  fix [2291418] Camera preview cannot work in Emulator
This commit is contained in:
Mathias Agopian
2009-12-02 17:50:45 -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) : mBufferHeap(buffers)
{ {
NativeBuffer& src(mNativeBuffer); 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(); gralloc_module_t const * module = LayerBuffer::getGrallocModule();
if (module && module->perform) { if (module && module->perform) {
@ -276,19 +285,12 @@ LayerBuffer::Buffer::Buffer(const ISurface::BufferHeap& buffers, ssize_t offset)
offset, buffers.heap->base(), offset, buffers.heap->base(),
&src.img.handle); &src.img.handle);
if (err == NO_ERROR) { LOGE_IF(err, "CREATE_HANDLE_FROM_BUFFER (heapId=%d, size=%d, "
src.crop.l = 0; "offset=%ld, base=%p) failed (%s)",
src.crop.t = 0; buffers.heap->heapID(), buffers.heap->getSize(),
src.crop.r = buffers.w; offset, buffers.heap->base(), strerror(-err));
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);
}
} }
} }
LayerBuffer::Buffer::~Buffer() LayerBuffer::Buffer::~Buffer()
{ {