diff --git a/src/config/edit.zig b/src/config/edit.zig index 00c8df718..38d9f2b7f 100644 --- a/src/config/edit.zig +++ b/src/config/edit.zig @@ -9,16 +9,9 @@ pub fn open(alloc_gpa: Allocator) !void { const config_path = try internal_os.xdg.config(alloc_gpa, .{ .subdir = "ghostty/config" }); defer alloc_gpa.free(config_path); - // Check if the directory exists, create it if it doesn't. This dirname - // call should always succeed but we still check for errors just in case, - // no harm if we skip this step the open may just fail. + // Create config directory recursively. if (std.fs.path.dirname(config_path)) |config_dir| { - _ = std.fs.makeDirAbsolute(config_dir) catch |err| { - switch (err) { - error.PathAlreadyExists => {}, - else => return err, - } - }; + try std.fs.cwd().makePath(config_dir); } // Try to create file and go on if it already exists