Fix for corruption when numFds or numInts is too large.

Bug: 18076253
Change-Id: I4c5935440013fc755e1d123049290383f4659fb6
(cherry picked from commit dfd06b89a4b77fc75eb85a3c1c700da3621c0118)

void GraphicBuffer::free_handle()
{
 if (mOwner == ownHandle) {
        mBufferMapper.unregisterBuffer(handle);
        native_handle_close(handle);
        native_handle_delete(const_cast<native_handle*>(handle));
 } else if (mOwner == ownData) {
 GraphicBufferAllocator& allocator(GraphicBufferAllocator::get());
        allocator.free(handle);
 }
    mWrappedBuffer = 0;
}

void GraphicBuffer::free_handle()
{
 if (mOwner == ownHandle) {
        mBufferMapper.unregisterBuffer(handle);
        native_handle_close(handle);
        native_handle_delete(const_cast<native_handle*>(handle));
 } else if (mOwner == ownData) {
 GraphicBufferAllocator& allocator(GraphicBufferAllocator::get());
        allocator.free(handle);
 }
    mWrappedBuffer = 0;
}
