ng_tty: avoid the sign extention of char

When c is compared to sc->hotchar, both undergo integer promotion, which
can lead to c being sign extended. Fix this by casting c to an unsigned
char.

Reviewed by:	kevans
MFC after:	5 days
Differential Revision:	https://reviews.freebsd.org/D54544
This commit is contained in:
Ahmad Khalifa 2026-01-06 04:07:29 +02:00
parent 0b298e314a
commit 9b2478f60b

View file

@ -489,7 +489,8 @@ ngt_rint(struct tty *tp, char c, int flags)
m->m_pkthdr.len++;
/* Ship off mbuf if it's time */
if (sc->hotchar == -1 || c == sc->hotchar || m->m_len >= MHLEN) {
if (sc->hotchar == -1 || (u_char)c == sc->hotchar ||
m->m_len >= MHLEN) {
sc->m = NULL;
NG_SEND_DATA_ONLY(error, sc->hook, m); /* Will queue */
}