diff options
Diffstat (limited to 'src/Module.zig')
| -rw-r--r-- | src/Module.zig | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Module.zig b/src/Module.zig index 8bb5a94c17..85cc0f14b9 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -4694,7 +4694,11 @@ pub fn importFile( const resolved_root_path = try std.fs.path.resolve(gpa, &[_][]const u8{cur_pkg_dir_path}); defer gpa.free(resolved_root_path); - if (!mem.startsWith(u8, resolved_path, resolved_root_path)) { + if (!mem.startsWith(u8, resolved_path, resolved_root_path) or + // This prevents this check from triggering when the name of the + // imported file starts with the root path's directory name. + mem.indexOfAny(u8, &.{resolved_path[resolved_root_path.len]}, "/\\") == null) + { return error.ImportOutsidePkgPath; } // +1 for the directory separator here. |
