message: Fix panic in fread
diff: @@ -422,11 +422,15 @@ pub unsafe extern "C" fn fputs(s: *const c_char, stream: *mut FILE) -> c_int {
  pub unsafe extern "C" fn fread(
  ptr: *mut c_void,
  size: size_t,
  - count: size_t,
  + nitems: size_t,
  stream: *mut FILE,
  ) -> size_t {
  + if size == 0 || count == 0 {
  + return 0;
  + }
  +
  let mut stream = (*stream).lock();
  - let buf = slice::from_raw_parts_mut(ptr as *mut u8, size as usize * count as usize);
  + let buf = slice::from_raw_parts_mut(ptr as *mut u8, size as usize * nitems as usize);
  let mut read = 0;
  while read < buf.len() {
  match stream.read(&mut buf[read..]) {
  