45 lines
2.0 KiB
Diff
45 lines
2.0 KiB
Diff
From e668956ba71426d495ca9e117638b8d738fd148f Mon Sep 17 00:00:00 2001
|
|
From: Martchus <martchus@gmx.net>
|
|
Date: Sat, 8 May 2021 01:55:19 +0200
|
|
Subject: [PATCH 8/8] Fix passing QJniEnvironment to ANativeWindow_fromSurface
|
|
|
|
The function ANativeWindow_fromSurface (as declared by
|
|
`$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/android/native_window_jni.h`
|
|
from version r22.b of the Android NDK) takes a `JNIEnv*` so `.jniEnv()` must be used.
|
|
|
|
This prevents the following compilation error:
|
|
|
|
```
|
|
error: no matching function for call to 'ANativeWindow_f
|
|
romSurface'
|
|
m_nativeWindow = ANativeWindow_fromSurface(env, m_androidSurfaceObject.object());
|
|
^~~~~~~~~~~~~~~~~~~~~~~~~
|
|
/opt/android-ndk/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/android/native_window_jni.h:45:16: note: candidate function not viable: no known conversion from 'QJniEnvironment' t
|
|
o 'JNIEnv *' (aka '_JNIEnv *') for 1st argument
|
|
ANativeWindow* ANativeWindow_fromSurface(JNIEnv* env, jobject surface);
|
|
^
|
|
1 error generated.
|
|
```
|
|
|
|
Change-Id: I70d75cb7edc5875314fcb8a70d51d0ef40442101
|
|
---
|
|
src/plugins/platforms/android/qandroidplatformvulkanwindow.cpp | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/plugins/platforms/android/qandroidplatformvulkanwindow.cpp b/src/plugins/platforms/android/qandroidplatformvulkanwindow.cpp
|
|
index 8f2a37626a..9d4688b52d 100644
|
|
--- a/src/plugins/platforms/android/qandroidplatformvulkanwindow.cpp
|
|
+++ b/src/plugins/platforms/android/qandroidplatformvulkanwindow.cpp
|
|
@@ -173,7 +173,7 @@ VkSurfaceKHR *QAndroidPlatformVulkanWindow::vkSurface()
|
|
return &m_vkSurface;
|
|
|
|
QJniEnvironment env;
|
|
- m_nativeWindow = ANativeWindow_fromSurface(env, m_androidSurfaceObject.object());
|
|
+ m_nativeWindow = ANativeWindow_fromSurface(env.jniEnv(), m_androidSurfaceObject.object());
|
|
|
|
VkAndroidSurfaceCreateInfoKHR surfaceInfo;
|
|
memset(&surfaceInfo, 0, sizeof(surfaceInfo));
|
|
--
|
|
2.31.1
|
|
|