https://gitlab.synchro.net/main/sbbs/-/commit/c9ab235a137b8a83e8311db7
Modified Files:
src/sbbs3/getmsg.cpp
Log Message:
Message listings: don't emit control chars from UTF-8 header fields
Converting a UTF-8 header field to CP437 can yield a control character:
U+263A (white smiling face) maps to 0x01, i.e. Ctrl-A. Since a81d979492 (teeth-19-temp, 2026-07-28) the message/mail listings pass the converted
fields through bputs(), which interprets such bytes rather than displaying them. A subject ending in U+263A put "\1\r\n" at the end of its line: the Ctrl-A consumed the CR (toggling CON_ECHO_OFF for users without flag M),
and the bare LF left the column at the P_TRUNCATE limit, so the entire next listing line was truncated to nothing.
msghdr_field() now replaces any control character in the converted field
with the inverted question mark used for unsupported code points.
Co-Authored-By: Claude Opus 5.5 <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net