diff options
Diffstat (limited to 'src/eval.zig')
-rw-r--r-- | src/eval.zig | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/eval.zig b/src/eval.zig index 3381302..1b9858e 100644 --- a/src/eval.zig +++ b/src/eval.zig @@ -28,6 +28,8 @@ const OutputCapture = cmdTypes.OutputCapture; const StdoutOutputCapture = cmdTypes.StdoutOutputCapture; const OutputWriter = cmdTypes.OutputWriter; const InputSource = cmdTypes.InputSource; +const StdinInputReader = cmdTypes.StdinInputReader; +const InputReader = cmdTypes.InputReader; const CommandContext = cmdTypes.CommandContext; const STDOUT_BUFFER_SIZE: usize = 1024; @@ -44,7 +46,13 @@ pub fn executeCommandWithOutput(command: Command, allocator: Allocator, output_c else OutputWriter{ .stdout = &stdout_capture }; - const ctx = CommandContext.init(allocator, output_writer, input_source, executeCommandWithOutput); + var stdin_reader = StdinInputReader{}; + const input_reader = if (input_source) |source| + InputReader{ .source = source } + else + InputReader{ .stdin = &stdin_reader }; + + const ctx = CommandContext.init(allocator, output_writer, input_reader, executeCommandWithOutput); switch (command) { .Empty => return CommandStatus{ .Code = 0 }, |