summaryrefslogtreecommitdiff
path: root/src/host_io.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/host_io.zig')
-rw-r--r--src/host_io.zig3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/host_io.zig b/src/host_io.zig
index a7babc74..72e149c9 100644
--- a/src/host_io.zig
+++ b/src/host_io.zig
@@ -955,6 +955,9 @@ pub fn forkShell(
var cwd_buf: [4096]u8 = undefined;
const cwd_z: ?[:0]const u8 = if (native_cwd.len == 0) null else dir: {
const path = std.fmt.bufPrintSentinel(&cwd_buf, "{s}", .{native_cwd}, 0) catch return error.NameTooLong;
+ // A shell's directory may be inside a mount this editor serves.
+ pardes.turn.yield();
+ defer pardes.turn.back();
const stat = try std.Io.Dir.cwd().statFile(std.Io.Threaded.global_single_threaded.io(), path, .{});
if (stat.kind != .directory) return error.NotDir;
break :dir path;