[Git][wine/wine][master] 4 commits: wineandroid: Fix 64-bit crash in setCursor JNI call.
Alexandre Julliard pushed to branch master at wine / wine Commits: d021a24c by Twaik Yont at 2026-04-16T22:17:25+02:00 wineandroid: Fix 64-bit crash in setCursor JNI call. Pass NULL as a jobject for the pixel array argument when size is zero. Passing integer 0 to CallVoidMethod() in a varargs call is undefined and on 64-bit platforms may be interpreted as an invalid jobject, triggering a JNI abort. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - bb25f8f0 by Twaik Yont at 2026-04-16T22:17:28+02:00 wineandroid: Lower targetSdkVersion to avoid Android 10 W^X restrictions. Android 10 enforces W^X restrictions for apps targeting API level 29+, including removal of execute permission for the app home directory and restrictions on execve() and executable mappings. See: https://developer.android.com/about/versions/10/behavior-changes-10#execute-... Lower targetSdkVersion to 28 so the current Wine Android startup model continues to work on modern devices while the codebase is being adapted to these restrictions. Set Java compile options to 1.8 as required by the Android build after lowering compileSdkVersion. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - e329c653 by Twaik Yont at 2026-04-16T22:17:31+02:00 wineandroid: Fix loader path and library lookup for modern Wine/Android. Update WINELOADER to match the current Wine layout. Also extend LD_LIBRARY_PATH to include libraries from the APK, since modern Android versions may load native libraries directly from the APK instead of extracting them to the filesystem. Support for loading shared libraries directly from an APK via dlopen("apk!/lib/...") is available since API level 23. See: https://android.googlesource.com/platform/bionic/+/master/android-changes-fo... This restores correct startup on recent Wine versions and Android devices. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - 7e294382 by Twaik Yont at 2026-04-16T22:17:38+02:00 wineandroid: Move environment setup to Java and drop obsolete env vars. Move environment setup to WineActivity using setenv() and remove the environment array parameter from wine_init(). The startup variables are now set directly in the JVM process instead of being marshaled through JNI and reconstructed on the native side. wine_init() now reads the process environment via getenv(), keeping the LD_LIBRARY_PATH update and WINEDEBUGLOG handling while removing the JNI-side environment reconstruction. Drop setting WINELOADER, WINEDLLPATH and PATH, which are no longer required with the current Wine startup design. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - 4 changed files: - dlls/ntdll/unix/loader.c - dlls/wineandroid.drv/WineActivity.java - dlls/wineandroid.drv/build.gradle.in - dlls/wineandroid.drv/device.c View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/47cb71e9e24562f5deb016dc5098c4... -- View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/47cb71e9e24562f5deb016dc5098c4... You're receiving this email because of your account on gitlab.winehq.org. Manage all notifications: https://gitlab.winehq.org/-/profile/notifications | Help: https://gitlab.winehq.org/help
participants (1)
-
Alexandre Julliard (@julliard)