It looks like mesa does some hackery to detect pointers to libwayland objects. In particular, in the function _eglNativePlatformDetectNativeDisplay in src/egl/main/egldisplay.c:
if (first_pointer == &wl_display_interface)
return _EGL_PLATFORM_WAYLAND;
But as far as I know, mesa does not break encapsulation anywhere else. So fixing this instance might be sufficient.
I'm not sure what the impact of this is.
It looks like mesa does some hackery to detect pointers to libwayland objects. In particular, in the function
_eglNativePlatformDetectNativeDisplayinsrc/egl/main/egldisplay.c:But as far as I know, mesa does not break encapsulation anywhere else. So fixing this instance might be sufficient.
I'm not sure what the impact of this is.