[PATCH v2] libdrm: gralloc_handle.h: Fix build issue with Android

John Stultz john.stultz at linaro.org
Tue Apr 3 03:37:33 UTC 2018


In trying to integrate the new gralloc_handle.h with the
drm_hwcomposer, I started seeing the following compilation
errors:

In file included from external/drm_hwcomposer/platformdrmgeneric.cpp:28:
external/libdrm/android/gralloc_handle.h:108:9: error: cannot initialize return object of type 'native_handle_t *' (aka 'native_handle *') with an lvalue of type 'struct gralloc_handle_t *'
        return handle;
               ^~~~~~
1 error generated.

This seems to be due to the gralloc_handle_create() definition
needs to return a native_handle_t * type, rather then a
gralloc_handle_t *, which is what the code actually returns.

After talking w/ Rob Herring, having the code return the
native handle should be the proper fix, so that is what
this patch changes.

Cc: Chih-Wei Huang <cwhuang at android-x86.org>
Cc: Stefan Schake <stschake at gmail.com>
Cc: Robert Foss <robert.foss at collabora.com>
Cc: Sean Paul <seanpaul at google.com>
Cc: Rob Herring <robh at kernel.org>
Signed-off-by: John Stultz <john.stultz at linaro.org>
---
v2: Change fix to return nhandle instead of changing the
    function definition
---
 android/gralloc_handle.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/android/gralloc_handle.h b/android/gralloc_handle.h
index 9cb5a5d..bcf753d 100644
--- a/android/gralloc_handle.h
+++ b/android/gralloc_handle.h
@@ -105,7 +105,7 @@ static inline native_handle_t *gralloc_handle_create(int32_t width,
 	handle->usage = usage;
 	handle->prime_fd = -1;
 
-	return handle;
+	return nhandle;
 }
 
 #endif
-- 
2.7.4



More information about the dri-devel mailing list