diff options
author | Mathias Agopian <mathias@google.com> | 2009-05-20 14:33:23 -0700 |
---|---|---|
committer | Mathias Agopian <mathias@google.com> | 2009-05-20 14:33:23 -0700 |
commit | 9890815e427c49192efd738a8ae07ce038da92be (patch) | |
tree | 646c4fae7b60c45fe8b43a91397ab47749efe1ef /libs/ui | |
parent | 2d10ba33190c2ff1b24d6c48dd621c55a25bf2cc (diff) | |
download | frameworks_base-9890815e427c49192efd738a8ae07ce038da92be.zip frameworks_base-9890815e427c49192efd738a8ae07ce038da92be.tar.gz frameworks_base-9890815e427c49192efd738a8ae07ce038da92be.tar.bz2 |
bring the native_handle stuff back from master_gl
Diffstat (limited to 'libs/ui')
-rw-r--r-- | libs/ui/Overlay.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/libs/ui/Overlay.cpp b/libs/ui/Overlay.cpp index b236edc..59c6514 100644 --- a/libs/ui/Overlay.cpp +++ b/libs/ui/Overlay.cpp @@ -129,12 +129,8 @@ OverlayRef::OverlayRef(overlay_handle_t handle, const sp<IOverlay>& channel, OverlayRef::~OverlayRef() { if (mOwnHandle) { - /* FIXME: handles should be promoted to "real" API and be handled by - * the framework */ - for (int i=0 ; i<mOverlayHandle->numFds ; i++) { - close(mOverlayHandle->data[i]); - } - free((void*)mOverlayHandle); + native_handle_close(mOverlayHandle); + native_handle_delete(const_cast<native_handle*>(mOverlayHandle)); } } @@ -147,7 +143,7 @@ sp<OverlayRef> OverlayRef::readFromParcel(const Parcel& data) { uint32_t f = data.readInt32(); uint32_t ws = data.readInt32(); uint32_t hs = data.readInt32(); - native_handle* handle = data.readNativeHandle(NULL, NULL); + native_handle* handle = data.readNativeHandle(); result = new OverlayRef(); result->mOverlayHandle = handle; @@ -169,7 +165,7 @@ status_t OverlayRef::writeToParcel(Parcel* reply, const sp<OverlayRef>& o) { reply->writeInt32(o->mFormat); reply->writeInt32(o->mWidthStride); reply->writeInt32(o->mHeightStride); - reply->writeNativeHandle(*(o->mOverlayHandle)); + reply->writeNativeHandle(o->mOverlayHandle); } else { reply->writeStrongBinder(NULL); } |