瀏覽代碼

Do not return mutable pointer from strsignal

Jeremy Soller 6 年之前
父節點
當前提交
d66afa4586
共有 1 個文件被更改,包括 2 次插入4 次删除
  1. 2 4
      src/header/string/mod.rs

+ 2 - 4
src/header/string/mod.rs

@@ -355,10 +355,8 @@ pub unsafe extern "C" fn strrchr(s: *const c_char, c: c_int) -> *mut c_char {
 }
 
 #[no_mangle]
-pub unsafe extern "C" fn strsignal(sig: c_int) -> *mut c_char {
-    // Mutating this is undefined behavior I believe. But I just can't create a
-    // &'static mut str. Alternative is allocating everything on the heap...
-    signal::_signal_strings[sig as usize].as_ptr() as *const c_char as *mut c_char
+pub unsafe extern "C" fn strsignal(sig: c_int) -> *const c_char {
+    signal::_signal_strings[sig as usize].as_ptr() as *const c_char
 }
 
 #[no_mangle]