proper printing

This commit is contained in:
Shreyas Goenka 2025-03-05 10:44:43 +01:00
parent 39d0b13c4f
commit 2212aa2597
No known key found for this signature in database
GPG Key ID: 92A07DF49CCB0622
3 changed files with 20 additions and 27 deletions

View File

@ -112,37 +112,30 @@ Example usage:
var stdoutErr error var stdoutErr error
go func() { go func() {
reader := bufio.NewReader(stdout) defer wg.Done()
line, err := reader.ReadString('\n')
for err == nil { scanner := bufio.NewScanner(stdout)
_, err = fmt.Fprintf(cmd.OutOrStdout(), "%s\n", strings.TrimSpace(line)) for scanner.Scan() {
_, err = fmt.Fprintln(cmd.OutOrStdout(), scanner.Text())
if err != nil { if err != nil {
stdoutErr = err stdoutErr = err
break break
} }
line, err = reader.ReadString('\n')
} }
wg.Done()
}() }()
var stderrErr error var stderrErr error
go func() { go func() {
reader := bufio.NewReader(stderr) defer wg.Done()
// TODO CONTINUE: The formatting is messed u[] because of the new line business
// here. scanner := bufio.NewScanner(stderr)
// Fix that. for scanner.Scan() {
line, err := reader.ReadString('\n') _, err = fmt.Fprintln(cmd.ErrOrStderr(), scanner.Text())
for err == nil {
_, err = fmt.Fprintf(cmd.ErrOrStderr(), "%s\n", strings.TrimSpace(line))
if err != nil { if err != nil {
stderrErr = err stderrErr = err
break break
} }
line, err = reader.ReadString('\n')
} }
wg.Done()
}() }()
wg.Wait() wg.Wait()