linux: Fix crash when NoKeymap event is received on Wayland (#24379)
Closes #24139 For weird reasons, Sway on few linux distoros sends `NoKeymap` event when switching windows. Zed crashes due to assertion on this event to be `XkbV1`. To fix this, we ignore `NoKeymap` event instead crashing Zed. Release Notes: - Fixed a crash in Wayland-based compositors like Sway when switching windows via the keyboard.
This commit is contained in:
parent
5ffacb9ca5
commit
6534e0bafd
1 changed files with 4 additions and 5 deletions
|
@ -1132,11 +1132,10 @@ impl Dispatch<wl_keyboard::WlKeyboard, ()> for WaylandClientStatePtr {
|
|||
size,
|
||||
..
|
||||
} => {
|
||||
assert_eq!(
|
||||
format,
|
||||
wl_keyboard::KeymapFormat::XkbV1,
|
||||
"Unsupported keymap format"
|
||||
);
|
||||
if format != wl_keyboard::KeymapFormat::XkbV1 {
|
||||
log::error!("Received keymap format {:?}, expected XkbV1", format);
|
||||
return;
|
||||
}
|
||||
let xkb_context = xkb::Context::new(xkb::CONTEXT_NO_FLAGS);
|
||||
let keymap = unsafe {
|
||||
xkb::Keymap::new_from_fd(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue