removed the "bits" attribute from android_native_buffer_t.

"bits" can never be trusted now that we need to call lock() on the handle to get the virtual address of the buffer.
diff --git a/libs/ui/Surface.cpp b/libs/ui/Surface.cpp
index 68fd963..5f2138e 100644
--- a/libs/ui/Surface.cpp
+++ b/libs/ui/Surface.cpp
@@ -90,23 +90,22 @@
     return 0;
 }
 
-status_t SurfaceBuffer::lock(uint32_t usage)
+status_t SurfaceBuffer::lock(uint32_t usage, void** vaddr)
 {
     const Rect lockBounds(width, height);
-    status_t res = lock(usage, lockBounds);
+    status_t res = lock(usage, lockBounds, vaddr);
     return res;
 }
 
-status_t SurfaceBuffer::lock(uint32_t usage, const Rect& rect)
+status_t SurfaceBuffer::lock(uint32_t usage, const Rect& rect, void** vaddr)
 {
-    status_t res = getBufferMapper().lock(handle, usage, rect, &bits);
+    status_t res = getBufferMapper().lock(handle, usage, rect, vaddr);
     return res;
 }
 
 status_t SurfaceBuffer::unlock()
 {
     status_t res = getBufferMapper().unlock(handle);
-    bits = NULL;
     return res;
 }
 
@@ -134,11 +133,11 @@
         const sp<SurfaceBuffer>& src, 
         const Region& reg)
 {
-    src->lock(GRALLOC_USAGE_SW_READ_OFTEN, reg.bounds());
-    uint8_t const * const src_bits = (uint8_t const *)src->bits;
+    uint8_t const * src_bits;
+    src->lock(GRALLOC_USAGE_SW_READ_OFTEN, reg.bounds(), (void**)&src_bits);
 
-    dst->lock(GRALLOC_USAGE_SW_WRITE_OFTEN, reg.bounds());
-    uint8_t* const dst_bits = (uint8_t*)dst->bits;
+    uint8_t* dst_bits;
+    dst->lock(GRALLOC_USAGE_SW_WRITE_OFTEN, reg.bounds(), (void**)&dst_bits);
     
     Region::iterator iterator(reg);
     if (iterator) {
@@ -629,9 +628,10 @@
             mDirtyRegion = newDirtyRegion;
             mOldDirtyRegion = newDirtyRegion;
 
+            void* vaddr;
             status_t res = backBuffer->lock(
                     GRALLOC_USAGE_SW_READ_OFTEN | GRALLOC_USAGE_SW_WRITE_OFTEN,
-                    newDirtyRegion.bounds());
+                    newDirtyRegion.bounds(), &vaddr);
             
             LOGW_IF(res, "failed locking buffer %d (%p)", 
                     mBackbufferIndex, backBuffer->handle);
@@ -642,7 +642,7 @@
             other->s      = backBuffer->stride;
             other->usage  = backBuffer->usage;
             other->format = backBuffer->format;
-            other->bits   = backBuffer->bits;
+            other->bits   = vaddr;
         }
     }
     return err;
@@ -660,7 +660,6 @@
             mBackbufferIndex, mLockedBuffer->handle);
     
     status_t err = queueBuffer(mLockedBuffer);
-    mLockedBuffer->bits = NULL;
     mLockedBuffer = 0;
     return err;
 }