[PPC] Fix loader input with newer QEMU versions

At least since version 4.0.0, QEMU became bug-compatible with PowerVM's
vty, by inserting a \0 after every \r. As this confuses loader's
interpreter and as a \0 coming from the console doesn't seem reasonable,
it's now being filtered at OFW console input.

Reviewed by:	jhibbits
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D20676
This commit is contained in:
Leandro Lupori 2019-06-19 11:37:43 +00:00
parent 87278c17c9
commit 68ed5ad2d5

View File

@ -97,7 +97,11 @@ ofw_cons_getchar()
return l;
}
if (OF_read(stdin, &ch, 1) > 0)
/* At least since version 4.0.0, QEMU became bug-compatible
* with PowerVM's vty, by inserting a \0 after every \r.
* As this confuses loader's interpreter and as a \0 coming
* from the console doesn't seem reasonable, it's filtered here. */
if (OF_read(stdin, &ch, 1) > 0 && ch != '\0')
return (ch);
return (-1);