add an offset field to gralloc handles so the framebuffer can work with copybit
diff --git a/modules/gralloc/gralloc.cpp b/modules/gralloc/gralloc.cpp
index 5a38b33..6ec65e9 100644
--- a/modules/gralloc/gralloc.cpp
+++ b/modules/gralloc/gralloc.cpp
@@ -147,6 +147,7 @@
     }
     
     hnd->base = vaddr;
+    hnd->offset = vaddr - intptr_t(m->framebuffer->base);
     *pHandle = hnd;
 
     return 0;
diff --git a/modules/gralloc/gralloc_priv.h b/modules/gralloc/gralloc_priv.h
index 2aaf141..4d5afdc 100644
--- a/modules/gralloc/gralloc_priv.h
+++ b/modules/gralloc/gralloc_priv.h
@@ -82,18 +82,19 @@
     int     magic;
     int     flags;
     int     size;
+    int     offset; // used with copybit
     // FIXME: the attributes below should be out-of-line
     int     base;
     int     lockState;
     int     writeOwner;
 
-    static const int sNumInts = 6;
+    static const int sNumInts = 7;
     static const int sNumFds = 1;
     static const int sMagic = 0x3141592;
 
     private_handle_t(int fd, int size, int flags) :
-        fd(fd), magic(sMagic), flags(flags), size(size), base(0),
-        lockState(0), writeOwner(0) 
+        fd(fd), magic(sMagic), flags(flags), size(size), offset(0),
+        base(0), lockState(0), writeOwner(0) 
     {
         version = sizeof(native_handle);
         numInts = sNumInts;