From 938c6c65c49f504a951f65a0c53bfcd0c4921113 Mon Sep 17 00:00:00 2001 From: Avery Pennarun Date: Wed, 20 Feb 2019 19:14:37 -0500 Subject: [PATCH] cookbook/container/kvm: better handling of \r\n line endings. --- docs/cookbook/container/default.runkvm.do | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/docs/cookbook/container/default.runkvm.do b/docs/cookbook/container/default.runkvm.do index 2b3ef0c..9969bf6 100644 --- a/docs/cookbook/container/default.runkvm.do +++ b/docs/cookbook/container/default.runkvm.do @@ -21,10 +21,15 @@ kvm \ -serial chardev:char0 \ -serial chardev:char1 \ -serial chardev:char2 >&2 -read rv <$1.code || true -[ -z "$rv" ] && exit 99 +fix_cr() { + # serial devices use crlf (\r\n) as line + # endings instead of just lf (\n). + sed -e 's/\r//g' +} +rv=$(fix_cr <"$1.code") +[ -n "$rv" ] || exit 99 if [ "$rv" -eq 0 ]; then - sed -e 's/\r//g' "$1.out" >$3 + fix_cr <"$1.out" >$3 echo "ok." >&2 else echo "kvm program returned error: $rv" >&2