term: process bytes returned with a read error The io.Reader contract permits Read to return both data and a non-nil error. readLine currently returns the error before processing the data, which can discard the final complete line when a reader returns data with io.EOF. Append returned bytes to the input buffer and save the accompanying error. Report the error after the buffered input has been processed, preserving it across ReadLine calls when the input contains a complete line. Add a regression test for a reader that returns "line\r" and io.EOF in the same call. Fixes golang/go#80661 Change-Id: I34ac28731ec40f3398b9c0990e19cc17b737ba9e Reviewed-on: https://go-review.googlesource.com/c/term/+/808420 Reviewed-by: Alan Donovan <adonovan@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Alan Donovan <adonovan@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
This repository provides Go terminal and console support packages.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.
The git repository is https://go.googlesource.com/term.
The main issue tracker for the term repository is located at https://go.dev/issues. Prefix your issue with “x/term:” in the subject line, so it is easy to find.