Skip to content
Permalink
Browse files

Use actual size for old allocation in ft_realloc.

Prevents crashes from improperly freed memory.

Fixes #19008, fixes #18950, fixes #18949.
  • Loading branch information
mbrubeck committed Oct 24, 2017
1 parent 347176d commit 865e81749a6530a02f608dddae154b7b0bef827e
Showing with 2 additions and 2 deletions.
  1. +2 −2 components/gfx/platform/freetype/font_context.rs
@@ -51,13 +51,13 @@ extern fn ft_free(mem: FT_Memory, ptr: *mut c_void) {
}
}

extern fn ft_realloc(mem: FT_Memory, old_size: c_long, new_req_size: c_long,
extern fn ft_realloc(mem: FT_Memory, _old_size: c_long, new_req_size: c_long,
old_ptr: *mut c_void) -> *mut c_void {
let old_actual_size;
let mut vec;
unsafe {
old_actual_size = usable_size(old_ptr as *const _);
let old_size = old_size as usize;
let old_size = old_actual_size as usize;
vec = Vec::<u8>::from_raw_parts(old_ptr as *mut u8, old_size, old_size);
};

0 comments on commit 865e817

Please sign in to comment.
You can’t perform that action at this time.