authorgravatar for contact@fengb.meBenjamin Feng <contact@fengb.me> 2019-12-04 00:10:37-06:00
committergravatar for contact@fengb.meBenjamin Feng <contact@fengb.me> 2019-12-04 00:10:37-06:00
loga6f838aab2678be491a774316c02a339487fe34d
treecf85b51c4c28337546b9cf3bc8f31601a39a2218
parent01e73bba8d8c98558de35a43e82a5f8de837d8a5

Remove redundant alloc


1 files changed, 2 insertions(+), 4 deletions(-)

lib/std/heap.zig+2-4
...@@ -334,12 +334,10 @@ const WasmPageAllocator = struct {...@@ -334,12 +334,10 @@ const WasmPageAllocator = struct {
334 return error.OutOfMemory;334 return error.OutOfMemory;
335 }335 }
336336
337 if (old_mem.len == 0) {337 if (nPages(new_size) == nPages(old_mem.len)) {
338 return alloc(allocator, new_size, new_align);338 return old_mem.ptr[0..new_size];
339 } else if (new_size < old_mem.len) {339 } else if (new_size < old_mem.len) {
340 return shrink(allocator, old_mem, old_align, new_size, new_align);340 return shrink(allocator, old_mem, old_align, new_size, new_align);
341 } else if (nPages(new_size) == nPages(old_mem.len)) {
342 return old_mem.ptr[0..new_size];
343 } else {341 } else {
344 const new_mem = try alloc(allocator, new_size, new_align);342 const new_mem = try alloc(allocator, new_size, new_align);
345 std.mem.copy(u8, new_mem, old_mem);343 std.mem.copy(u8, new_mem, old_mem);