From 4014a8e4b44bad5aca896ce0fdf120ef4212fc8d Mon Sep 17 00:00:00 2001 From: Jonathan S Date: Fri, 22 Nov 2019 16:32:50 -0600 Subject: [PATCH] Avoid deprecated cwd-based functions for opening directories, preferring to open explicitly relative to `Dir.cwd()`. --- lib/std/fs.zig | 10 +++++----- lib/std/os/test.zig | 2 +- src-self-hosted/main.zig | 2 +- src-self-hosted/stage1.zig | 2 +- tools/process_headers.zig | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/std/fs.zig b/lib/std/fs.zig index aa45513e05..e2ac561c7e 100644 --- a/lib/std/fs.zig +++ b/lib/std/fs.zig @@ -350,7 +350,7 @@ pub fn deleteTree(full_path: []const u8) !void { CannotDeleteRootDirectory, }.CannotDeleteRootDirectory; - var dir = try Dir.open(dirname); + var dir = try Dir.cwd().openDirList(dirname); defer dir.close(); return dir.deleteTree(path.basename(full_path)); @@ -1066,7 +1066,7 @@ pub const Dir = struct { error.Unexpected, => |e| return e, } - var dir = self.openDir(sub_path) catch |err| switch (err) { + var dir = self.openDirList(sub_path) catch |err| switch (err) { error.NotDir => { if (got_access_denied) { return error.AccessDenied; @@ -1131,7 +1131,7 @@ pub const Dir = struct { => |e| return e, } - const new_dir = dir.openDir(entry.name) catch |err| switch (err) { + const new_dir = dir.openDirList(entry.name) catch |err| switch (err) { error.NotDir => { if (got_access_denied) { return error.AccessDenied; @@ -1222,7 +1222,7 @@ pub const Walker = struct { try self.name_buffer.appendByte(path.sep); try self.name_buffer.append(base.name); if (base.kind == .Directory) { - var new_dir = top.dir_it.dir.openDir(base.name) catch |err| switch (err) { + var new_dir = top.dir_it.dir.openDirList(base.name) catch |err| switch (err) { error.NameTooLong => unreachable, // no path sep in base.name else => |e| return e, }; @@ -1260,7 +1260,7 @@ pub const Walker = struct { pub fn walkPath(allocator: *Allocator, dir_path: []const u8) !Walker { assert(!mem.endsWith(u8, dir_path, path.sep_str)); - var dir = try Dir.open(dir_path); + var dir = try Dir.cwd().openDirList(dir_path); errdefer dir.close(); var name_buffer = try std.Buffer.init(allocator, dir_path); diff --git a/lib/std/os/test.zig b/lib/std/os/test.zig index dd4a8e1860..778a39eb3c 100644 --- a/lib/std/os/test.zig +++ b/lib/std/os/test.zig @@ -20,7 +20,7 @@ test "makePath, put some files in it, deleteTree" { try io.writeFile("os_test_tmp" ++ fs.path.sep_str ++ "b" ++ fs.path.sep_str ++ "c" ++ fs.path.sep_str ++ "file.txt", "nonsense"); try io.writeFile("os_test_tmp" ++ fs.path.sep_str ++ "b" ++ fs.path.sep_str ++ "file2.txt", "blah"); try fs.deleteTree("os_test_tmp"); - if (fs.Dir.open("os_test_tmp")) |dir| { + if (fs.Dir.cwd().openDirTraverse("os_test_tmp")) |dir| { @panic("expected error"); } else |err| { expect(err == error.FileNotFound); diff --git a/src-self-hosted/main.zig b/src-self-hosted/main.zig index 501c8679f6..bf3fb4dea5 100644 --- a/src-self-hosted/main.zig +++ b/src-self-hosted/main.zig @@ -715,7 +715,7 @@ async fn fmtPath(fmt: *Fmt, file_path_ref: []const u8, check_mode: bool) FmtErro // ) catch |err| switch (err) { // error.IsDir, error.AccessDenied => { // // TODO make event based (and dir.next()) - // var dir = try fs.Dir.open(file_path); + // var dir = try fs.Dir.cwd().openDirList(file_path); // defer dir.close(); // var group = event.Group(FmtError!void).init(fmt.allocator); diff --git a/src-self-hosted/stage1.zig b/src-self-hosted/stage1.zig index 7220c3d0d9..96bf4b7fdf 100644 --- a/src-self-hosted/stage1.zig +++ b/src-self-hosted/stage1.zig @@ -279,7 +279,7 @@ fn fmtPath(fmt: *Fmt, file_path_ref: []const u8, check_mode: bool) FmtError!void const source_code = io.readFileAlloc(fmt.allocator, file_path) catch |err| switch (err) { error.IsDir, error.AccessDenied => { // TODO make event based (and dir.next()) - var dir = try fs.Dir.open(file_path); + var dir = try fs.Dir.cwd().openDirList(file_path); defer dir.close(); var dir_it = dir.iterate(); diff --git a/tools/process_headers.zig b/tools/process_headers.zig index ffa2bdd8ef..3a56cab162 100644 --- a/tools/process_headers.zig +++ b/tools/process_headers.zig @@ -340,7 +340,7 @@ pub fn main() !void { try dir_stack.append(target_include_dir); while (dir_stack.popOrNull()) |full_dir_name| { - var dir = std.fs.Dir.open(full_dir_name) catch |err| switch (err) { + var dir = std.fs.Dir.cwd().openDirList(full_dir_name) catch |err| switch (err) { error.FileNotFound => continue :search, error.AccessDenied => continue :search, else => return err,