• src/conio/curs_cio.c

    From deuce@VERT to CVS commit on Saturday, January 19, 2019 09:26:00
    src/conio curs_cio.c 1.41 1.42
    Update of /cvsroot/sbbs/src/conio
    In directory cvs:/tmp/cvs-serv6906

    Modified Files:
    curs_cio.c
    Log Message:
    Attempt to fix Linux weirdness with UIFC jsexec things.

    Basically, this just tracks if curses is already suspended or not and if it
    is, does not call noraw() and endwin() again. This should fix the issue on Linux since well-behaved scripts will call uifc.bail() before they exit.

    It appears what's happening is that jsexec sets the terminal as raw, then ciolib is initialized at which point ncurses saves the current terminal state. Before exiting, jsexec sets the terminal back to cooked mode, then exits. atexit() ciolib calls curs_suspend() which calls endwin() which restores
    the previously saved terminal state (ie: raw).




    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, May 31, 2019 00:24:00
    src/conio curs_cio.c 1.42 1.43
    Update of /cvsroot/sbbs/src/conio
    In directory cvs:/tmp/cvs-serv31491

    Modified Files:
    curs_cio.c
    Log Message:
    Have all curses functions resume before any curses calls are made.

    Make resume only perform any actions if curses is suspended.
    This may fix the Syncterm OS X raw on exit in -iC mode.
    (But may not either)



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