Skip to content

Commit ae75b4c

Browse files
committed
Fix spot splitting bug in allocator
1 parent 423cbb1 commit ae75b4c

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

library/std/src/sys/custom/alloc.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,13 @@ unsafe impl GlobalAlloc for DefaultAlloc {
177177

178178
drop(first_slot);
179179

180-
free(i, filler);
181-
free(i + filler + req_size, leftover);
180+
if filler > 0 {
181+
free(i, filler);
182+
}
183+
184+
if leftover > 0 {
185+
free(i + filler + req_size, leftover);
186+
}
182187

183188
let start = HEAP.as_ptr() as usize;
184189
core::ptr::from_exposed_addr_mut(start + i)

0 commit comments

Comments
 (0)