From a6f838aab2678be491a774316c02a339487fe34d Mon Sep 17 00:00:00 2001 From: Benjamin Feng Date: Wed, 4 Dec 2019 00:10:37 -0600 Subject: [PATCH] Remove redundant alloc --- lib/std/heap.zig | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/std/heap.zig b/lib/std/heap.zig index 20f2b94766..d7334c3a54 100644 --- a/lib/std/heap.zig +++ b/lib/std/heap.zig @@ -334,12 +334,10 @@ const WasmPageAllocator = struct { return error.OutOfMemory; } - if (old_mem.len == 0) { - return alloc(allocator, new_size, new_align); + if (nPages(new_size) == nPages(old_mem.len)) { + return old_mem.ptr[0..new_size]; } else if (new_size < old_mem.len) { return shrink(allocator, old_mem, old_align, new_size, new_align); - } else if (nPages(new_size) == nPages(old_mem.len)) { - return old_mem.ptr[0..new_size]; } else { const new_mem = try alloc(allocator, new_size, new_align); std.mem.copy(u8, new_mem, old_mem);