• src/sbbs3/ansiterm.cpp

    From rswindell@1:103/705 to CVS commit on Tue Apr 21 21:35:15 2020
    src/sbbs3 ansiterm.cpp 1.23 1.24
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv19787

    Modified Files:
    ansiterm.cpp
    Log Message:
    Spell-checkers in code editors weren't really a thing 30 years ago.

    --- SBBSecho 3.10-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From rswindell@1:103/705 to CVS commit on Sun May 24 00:36:55 2020
    src/sbbs3 ansiterm.cpp 1.25 1.26
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17994

    Modified Files:
    ansiterm.cpp
    Log Message:
    ansi_getxy() - handle unexpected cursor-position responses and stuff into the keyboard buffer (at the end) corrrectly. Previously, only part of the unexpected response would be placed in the keyboard buffer.

    --- SBBSecho 3.11-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From rswindell@1:103/705 to CVS commit on Sun May 24 01:26:09 2020
    src/sbbs3 ansiterm.cpp 1.26 1.27
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    ansiterm.cpp
    Log Message:
    Resolve GCC warning: comparison between signed and unsigned integer expressions


    --- SBBSecho 3.11-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Fri Oct 21 12:10:19 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/25b0e6d73356cc16b825a1a0
    Modified Files:
    src/sbbs3/ansiterm.cpp
    Log Message:
    Fix lost 'unexpected characters' received in ANSI get cursor position responseUnexpected characters received (maybe typed by the user) were supposed tobe stuffed in the keyboard input buffer using ungetstr(), but the input stringwas cleared rather than NUL-terminated before logging the expected characterand calling ungetstr(), so nothing (a blank string) was logged and nothing wasstuffed in the keyboard input-buffer in this case. Just an off-by-one bug.This should fix issue #304. Thanks to Keyop and Nelgin for their persistencein reporting and testing (in #synchronet at irc.synchro.net).
    --- SBBSecho 3.15-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Sat Oct 22 11:06:57 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/6812da2fd3c14d77c0b5c401
    Modified Files:
    src/sbbs3/ansiterm.cpp
    Log Message:
    Fix CID 319174 (Out-of-bounds write) correctlyThis Coverity reported issue was previously resolved (incorrectly) withcommit 0c441424 which also introduced a bug that ate all the unexpectedcursor position report characters (causing issue #304).The correct fix was to compare the response length against the buffer sizeminus one, to leave room for the NUL terminator.While fixing this and issue #304, I noticed that this function was using theresponse length ('rsp') as both the state machine state and string length,which didn't work right if a nearly-matching report/response was received:the x/y values would have been stripped from the response before stuffingin the keyboard input buffer. So a bit of a refactor here using a properstate machine variable.
    --- SBBSecho 3.15-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (in GitKraken)@1:103/705 to Git commit to main/sbbs/master on Mon Mar 20 17:56:11 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/d93e48b017307d53e00bd858
    Modified Files:
    src/sbbs3/ansiterm.cpp
    Log Message:
    Remove the call to sync() from ansi_getlines()This was needed back in the v2 days to be sure the escape sequence was sent*after* an output buffer before might've been cleared by a user's abort/Ctrl-Caction. SYNC/ASYNC called riosync() which called rioctl(TXSYNC) and we have noequivalent in Synchronet for TCP/IP (modern sbbs). A user's Ctrl-C will clearall pending I/O, but won't prevent subsequent output from being sent (untilthe abort condition is cleared) as used to be the case with serial I/O.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)