refactor(findr): Now accepts an allocator parameter.

This commit is contained in:
2026-06-30 12:53:27 -04:00
parent ae42d53f02
commit ca992f05f4
6 changed files with 37 additions and 10 deletions
+9 -1
View File
@@ -16,7 +16,14 @@ RepoPool :: struct {
threads: []^thread.Thread,
}
find_repos :: proc(roots: []string, results: ^[dynamic]string, thread_count: int) {
find_repos :: proc(
roots: []string,
results: ^[dynamic]string,
thread_count: int,
allocator := context.allocator,
) {
// TODO: This may be a code smell
context.allocator = allocator
if len(roots) == 0 do return
pool := new(RepoPool)
@@ -126,3 +133,4 @@ process_repo_dir :: proc(pool: ^RepoPool, dir_path: string) {
}
}
}
+9 -1
View File
@@ -78,7 +78,15 @@ collect_worker :: proc(t: ^thread.Thread) {
}
}
walk :: proc(roots: []string, results: ^[dynamic]string, opts: WalkOptions, thread_count: int) {
walk :: proc(
roots: []string,
results: ^[dynamic]string,
opts: WalkOptions,
thread_count: int,
allocator := context.allocator,
) {
// TODO: This may be a code smell
context.allocator = allocator
if len(roots) == 0 do return
ch, _ := chan.create(chan.Chan([]u8), max(2 * thread_count, 2), context.allocator)