Prevent null dereference on X11 with bad locale

This commit is contained in:
Kirill Chibisov 2022-06-08 01:04:33 +03:00 committed by GitHub
parent f10a984ba3
commit 224872ce03
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -103,7 +103,14 @@ extern "C" fn preedit_draw_callback(
if xim_text.encoding_is_wchar > 0 {
return;
}
let new_text = unsafe { CStr::from_ptr(xim_text.string.multi_byte) };
let new_text = unsafe { xim_text.string.multi_byte };
if new_text.is_null() {
return;
}
let new_text = unsafe { CStr::from_ptr(new_text) };
String::from(new_text.to_str().expect("Invalid UTF-8 String from IME"))
.chars()