From 4ab34f2e86f91e90e732302446f1382cc122f07c Mon Sep 17 00:00:00 2001 From: Hauke Strasdat Date: Sat, 30 Sep 2023 17:19:11 -0700 Subject: [PATCH] fix: don't make assumptions about signedness of libc::c_char --- fish-rust/src/common.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fish-rust/src/common.rs b/fish-rust/src/common.rs index 3ad25510e..d102ac41f 100644 --- a/fish-rust/src/common.rs +++ b/fish-rust/src/common.rs @@ -1467,10 +1467,10 @@ pub fn fish_setlocale() { /// Test if the character can be encoded using the current locale. fn can_be_encoded(wc: char) -> bool { - let mut converted = [0_i8; AT_LEAST_MB_LEN_MAX]; + let mut converted: [libc::c_char; AT_LEAST_MB_LEN_MAX] = [0; AT_LEAST_MB_LEN_MAX]; let mut state = zero_mbstate(); unsafe { - wcrtomb(&mut converted[0], wc as libc::wchar_t, &mut state) != 0_usize.wrapping_sub(1) + wcrtomb(converted.as_mut_ptr(), wc as libc::wchar_t, &mut state) != 0_usize.wrapping_sub(1) } }