[Git][wine/wine][master] 3 commits: wineandroid: Use Android logging for ioctl paths.
Alexandre Julliard pushed to branch master at wine / wine Commits: c28f3e56 by Twaik Yont at 2026-05-01T22:06:58+02:00 wineandroid: Use Android logging for ioctl paths. Replace use of Wine debug macros (TRACE/WARN/FIXME/ERR) in wineandroid ioctl-related code with a local LOG() helper based on __android_log_print. This is a preparatory change for moving ioctl dispatch to Android-managed threads, where no Wine TEB is available and the standard Wine debug macros are not safe to use. The new logging path uses debug channel flags initialized on the Wine side and relies on lightweight flag checks to preserve WINEDEBUG-based filtering, without invoking Wine debug helpers at runtime. Also replace wine_dbgstr_rect() with local formatting helpers. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - bd66623e by Twaik Yont at 2026-05-01T22:06:58+02:00 wineandroid: Move native window registration to surface_changed. Move native window registration from the APC/unixlib callback path to the direct JNI surface_changed callback, so it runs on the Android UI thread. Replace the APC-based register_window_callback mechanism with a direct call to register_native_window(), and remove the associated unixlib plumbing. Serialize native window registration with ioctl dispatch using a shared lock to avoid races between the GUI thread and the ioctl handling thread. Keep WM_ANDROID_REFRESH posted from process_events() after updating the window state. This removes the dependency on the Wine thread/APC execution path for this callback and relocates it to the Android GUI thread. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - ad17aed5 by Twaik Yont at 2026-05-01T22:06:58+02:00 wineandroid: Pass JNIEnv explicitly through ioctl handlers. Pass JNIEnv *env explicitly through the ioctl dispatch path and all ioctl handlers, and stop relying on the global jni_env variable in these code paths. Update all JNI call sites in the ioctl dispatch and related functions to use the passed env parameter, including method lookup and CallVoidMethod invocations, aligning these JNI interaction paths with the canonical usage pattern where JNIEnv is strictly per-thread and not stored globally. Other uses of the global jni_env remain and will be addressed in follow-up changes, so this is a preparatory refactoring, not the final thread-safety fix. This change is mechanically large but does not introduce functional changes, and is kept separate to simplify review of subsequent changes. Signed-off-by: Twaik Yont <9674930+twaik@users.noreply.github.com> - - - - - 6 changed files: - dlls/wineandroid.drv/android.h - dlls/wineandroid.drv/device.c - dlls/wineandroid.drv/dllmain.c - dlls/wineandroid.drv/init.c - dlls/wineandroid.drv/unixlib.h - dlls/wineandroid.drv/window.c View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/3594073f1b07b97e79ab2659b8b973... -- View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/3594073f1b07b97e79ab2659b8b973... 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)