commit 5e7c44a3211dc8b1bb0b6d3d4764f8fd0b8c665b (tree)
parent 6d84caf72771cf05997518ae2fa40a94de709de4
Author: Andrew Kelley <andrew@ziglang.org>
Date: Sun, 8 Oct 2023 17:42:49 -0700
Package.Fetch: tighten up check for path outside root
Diffstat:
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/Package/Fetch.zig b/src/Package/Fetch.zig
@@ -257,7 +257,9 @@ pub fn run(f: *Fetch) RunError!void {
f.hash_tok,
try eb.addString("path-based dependencies are not hashed"),
);
- if (std.mem.startsWith(u8, pkg_root.sub_path, "../")) {
+ if (std.mem.startsWith(u8, pkg_root.sub_path, "../") or
+ std.mem.eql(u8, pkg_root.sub_path, ".."))
+ {
return f.fail(
f.location_tok,
try eb.printString("dependency path outside project: '{}{s}'", .{
diff --git a/src/Package/Manifest.zig b/src/Package/Manifest.zig
@@ -318,8 +318,7 @@ const Parse = struct {
for (array_init.ast.elements) |elem_node| {
const path_string = try parseString(p, elem_node);
- const normalized = try std.fs.path.resolve(p.arena, &.{path_string});
- try p.paths.put(p.gpa, normalized, {});
+ try p.paths.put(p.gpa, path_string, {});
}
}