diff --git a/src/cmd/aquila/install.zig b/src/cmd/aquila/install.zig index fafc644e286ee0e54bfc941dd8ed9595eec9916f..053485c0a35f629f393acb4273bf0e92dd2b6cd7 100644 --- a/src/cmd/aquila/install.zig +++ b/src/cmd/aquila/install.zig @@ -18,7 +18,7 @@ pub fn execute(args: [][]u8) !void { defer f.close(); const w = f.writer(); const init = @import("../init.zig"); - try init.writeExeManifest(w, try u.random_string(48), "zigmod_installation", null, null); + try init.writeExeManifest(w, try u.random_string(gpa, 48), "zigmod_installation", null, null); } // add to ~/zig.mod for later diff --git a/src/cmd/init.zig b/src/cmd/init.zig index cf85d528c113b1fbee33bd7c8d80fa9e32b8551b..9eca8f460df4edeb0e4ebf1d5b056c51079e663a 100644 --- a/src/cmd/init.zig +++ b/src/cmd/init.zig @@ -26,7 +26,7 @@ pub fn execute(args: [][]u8) !void { const stdin = std.io.getStdIn().reader(); const cwd = std.fs.cwd(); - const id = try inquirer.answer(stdout, "ID (this gets autogenerated):", string, "{s}", try u.random_string(48)); + const id = try inquirer.answer(stdout, "ID (this gets autogenerated):", string, "{s}", try u.random_string(gpa, 48)); const ptype = try inquirer.forEnum(stdout, stdin, "Are you making an application or a library?", gpa, enum { exe, lib }, null); diff --git a/src/common.zig b/src/common.zig index 86dd791d32c75d4e685bad7273d7dc2d9ebb344c..30a9169dee602ea04eed26188493bc36f99ac095 100644 --- a/src/common.zig +++ b/src/common.zig @@ -263,7 +263,7 @@ pub fn get_module_from_dep(d: *zigmod.Dep, cachepath: string, options: *CollectO dd.dep = d.*; const save = dd; if (d.type != .local) dd.clean_path = u.trim_prefix(modpath, cachepath)[1..]; - if (dd.id.len == 0) dd.id = try u.random_string(48); + if (dd.id.len == 0) dd.id = try u.random_string(gpa, 48); if (d.name.len > 0) dd.name = d.name; if (d.main.len > 0) dd.main = d.main; if (d.c_include_dirs.len > 0) dd.c_include_dirs = d.c_include_dirs; diff --git a/src/util/funcs.zig b/src/util/funcs.zig index 6d41ac3b244bef9ffdf856aa95929d125529128a..b93ee893af5fcbfb59609618a5f97ae1d0ac5f1b 100644 --- a/src/util/funcs.zig +++ b/src/util/funcs.zig @@ -170,11 +170,11 @@ pub fn last(in: []string) !string { const alphabet = "0123456789abcdefghijklmnopqrstuvwxyz"; -pub fn random_string(len: usize) !string { +pub fn random_string(alloc: *std.mem.Allocator, len: usize) !string { const now = @intCast(u64, std.time.nanoTimestamp()); var rand = std.rand.DefaultPrng.init(now); const r = &rand.random; - var buf = try gpa.alloc(u8, len); + var buf = try alloc.alloc(u8, len); var i: usize = 0; while (i < len) : (i += 1) { buf[i] = alphabet[r.int(usize) % alphabet.len]; diff --git a/src/util/modfile.zig b/src/util/modfile.zig index 5291ef0657e7e08ca96740679da4c5694c17c0eb..e899c74d3fed47069d63b9556435c266b4a35fed 100644 --- a/src/util/modfile.zig +++ b/src/util/modfile.zig @@ -53,7 +53,7 @@ pub const ModFile = struct { } return Self{ - .id = if (id.len == 0) try u.random_string(48) else id, + .id = if (id.len == 0) try u.random_string(alloc, 48) else id, .name = name, .main = main, .c_include_dirs = try mapping.get_string_array(alloc, "c_include_dirs"), diff --git a/src/util/module.zig b/src/util/module.zig index 99dbbde8bbd25d17890805ee977a1484552b279b..3986c7be4fe21fca4cc14290983a4d7426745613 100644 --- a/src/util/module.zig +++ b/src/util/module.zig @@ -38,7 +38,7 @@ pub const Module = struct { return Module{ .alloc = alloc, .is_sys_lib = false, - .id = if (dep.id.len > 0) dep.id else try u.random_string(48), + .id = if (dep.id.len > 0) dep.id else try u.random_string(alloc, 48), .name = dep.name, .main = dep.main, .c_include_dirs = dep.c_include_dirs,