https://www.gravatar.com/avatar/5a74a89ea4bd0620a338b884c57655fc?s=240&d=mp

从mpv闪退引出的wayland协议兼容性思考

引言

在 UOS 的最新 kwin_wayland 环境下,mpv 播放器在反复全屏和还原过程中会出现闪退的问题,笔者经过一番排查,最终确定根因是 kwin_wayland 向 mpv 发送了一条 mpv 无法处理的高版本版本的 wl_pointer 事件,导致客户端在 libwayland 中 abort 了。借此机会,笔者仔细研究了出现该问题的条件和 libwayland 的机制,本文记录一些笔者对于系统中 wayland 协议兼容性的思考。