From eaac566c403e3fcda17845f3a96e16569be8746a Mon Sep 17 00:00:00 2001 From: Oliver Cruickshank Date: Fri, 22 Mar 2024 10:51:52 +0000 Subject: Switch static arena to growing arena --- src/server/build.odin | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'src/server') diff --git a/src/server/build.odin b/src/server/build.odin index 54ec93a..6173a88 100644 --- a/src/server/build.odin +++ b/src/server/build.odin @@ -12,6 +12,7 @@ import path "core:path/slashpath" import "core:runtime" import "core:strings" import "core:time" +import mem_virtual "core:mem/virtual" import "src:common" @@ -68,16 +69,16 @@ try_build_package :: proc(pkg_name: string) { return } - temp_arena: mem.Arena + temp_arena: mem_virtual.Arena - mem.arena_init( - &temp_arena, - make([]byte, mem.Megabyte * 25, runtime.default_allocator()), - ) - defer delete(temp_arena.data) + allocator_err := mem_virtual.arena_init_growing(&temp_arena, mem.Megabyte * 16); + + + + defer mem_virtual.arena_free_all(&temp_arena) { - context.allocator = mem.arena_allocator(&temp_arena) + context.allocator = mem_virtual.arena_allocator(&temp_arena) for fullpath in matches { if skip_file(filepath.base(fullpath)) { -- cgit v1.2.3 From d5970e9c0fb8703642491ee4cc839da3454309aa Mon Sep 17 00:00:00 2001 From: Oliver Cruickshank Date: Fri, 22 Mar 2024 11:04:24 +0000 Subject: Use correct arena free so memory doesnt leak --- src/server/build.odin | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/server') diff --git a/src/server/build.odin b/src/server/build.odin index 6173a88..5bb0d1e 100644 --- a/src/server/build.odin +++ b/src/server/build.odin @@ -75,7 +75,7 @@ try_build_package :: proc(pkg_name: string) { - defer mem_virtual.arena_free_all(&temp_arena) + defer mem_virtual.arena_destroy(&temp_arena) { context.allocator = mem_virtual.arena_allocator(&temp_arena) -- cgit v1.2.3 From 7ea00cb7418c0816bafe69319fe254ed741a13ff Mon Sep 17 00:00:00 2001 From: Oliver Cruickshank Date: Fri, 22 Mar 2024 11:16:58 +0000 Subject: Remove extraneous whitespace --- src/server/build.odin | 4 ---- 1 file changed, 4 deletions(-) (limited to 'src/server') diff --git a/src/server/build.odin b/src/server/build.odin index 5bb0d1e..d8a20ac 100644 --- a/src/server/build.odin +++ b/src/server/build.odin @@ -70,11 +70,7 @@ try_build_package :: proc(pkg_name: string) { } temp_arena: mem_virtual.Arena - allocator_err := mem_virtual.arena_init_growing(&temp_arena, mem.Megabyte * 16); - - - defer mem_virtual.arena_destroy(&temp_arena) { -- cgit v1.2.3