__                 _ _                _
  / _| ___   ___   __| | |__   __ _ _ __| | __
 | |_ / _ \ / _ \ / _` | '_ \ / _` | '__| |/ /
 |  _| (_) | (_) | (_| | |_) | (_| | |  |   <
 |_|  \___/ \___/ \__,_|_.__/ \__,_|_|  |_|\_\

A personal BBS  ·  Missoula, Montana  ·  formerly NaClCON BBS

Connect from your terminal: telnet naclconbbs.net 23  |  ssh naclconbbs.net -p 2222

  • src/sbbs3/ansi_parser.cpp ansi_parser_test.cpp

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu Sep 24 21:22:49 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/64f8ea71ff6847c3ff81b656
    Modified Files:
    src/sbbs3/ansi_parser.cpp ansi_parser_test.cpp
    Log Message:
    ANSI_Parser: end an SOS string on its string terminator

    ESC \ inside an SOS string moved the parser to the ESC state instead of completing the sequence, so the byte after the terminator was parsed as
    though it followed an ESC. A CR or LF there (the usual case) made the
    sequence broken and putmsg() stripped the whole SOS; a printable
    character was swallowed as the sequence's final byte; an escape sequence following it was lost track of. This dates from 374282bf81
    (skins-28-shop, 2025-03-30).

    ESC \ now completes an SOS exactly as it completes an APC, DCS, OSC or PM string: final state, ansi_was_cc set, final byte '\'.

    Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net