summaryrefslogtreecommitdiff
path: root/src/main.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.zig')
-rw-r--r--src/main.zig6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main.zig b/src/main.zig
index 69b40e0..d373826 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -361,6 +361,8 @@ pub fn main() !void {
history.deinit(allocator);
}
+ var last_written_index: usize = 0;
+
const stdout = std.fs.File.stdout();
while (true) {
@@ -406,7 +408,7 @@ pub fn main() !void {
if (segments.items.len == 1) {
const parsed = parser.parseCommand(cmd);
- const result = try shell.executeCommand(allocator, stdout_iface, parsed.name, parsed.args, parsed.output_redirect, parsed.error_redirect, parsed.append_output, parsed.append_error, &history);
+ const result = try shell.executeCommand(allocator, stdout_iface, parsed.name, parsed.args, parsed.output_redirect, parsed.error_redirect, parsed.append_output, parsed.append_error, &history, &last_written_index);
if (result == .exit_shell) break;
} else {
const result = try shell.executePipeline(allocator, stdout_iface, segments.items);
@@ -415,7 +417,7 @@ pub fn main() !void {
} else {
const parsed = parser.parseCommand(cmd);
- const result = try shell.executeCommand(allocator, stdout_iface, parsed.name, parsed.args, parsed.output_redirect, parsed.error_redirect, parsed.append_output, parsed.append_error, &history);
+ const result = try shell.executeCommand(allocator, stdout_iface, parsed.name, parsed.args, parsed.output_redirect, parsed.error_redirect, parsed.append_output, parsed.append_error, &history, &last_written_index);
if (result == .exit_shell) break;
}