• src/sbbs3/jsexec.c

    From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Thursday, June 16, 2022 21:47:40
    https://gitlab.synchro.net/main/sbbs/-/commit/d49facc893a919fefcb8969d
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Flush console output stream after executing a scriptSolves problem of status output lines being interleved with consoleoutput (e.g. from print()) after executing a script.
    --- SBBSecho 3.15-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows)@1:103/705 to Git commit to main/sbbs/master on Monday, May 01, 2023 12:00:24
    https://gitlab.synchro.net/main/sbbs/-/commit/65bde885de939d6b1157382e
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    More verbose help output for -L option
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wednesday, May 03, 2023 09:52:54
    https://gitlab.synchro.net/main/sbbs/-/commit/29001ba126bfd344c1f9ad63
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    This should allow it to link as a console program.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on ChromeOS)@1:103/705 to Git commit to main/sbbs/master on Sunday, June 11, 2023 14:33:40
    https://gitlab.synchro.net/main/sbbs/-/commit/20da5318bafa58eb3ead19e2
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Fix (harmless) memory leak reported by ASan when running 'jsexec -?'
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on ChromeOS)@1:103/705 to Git commit to main/sbbs/master on Sunday, July 09, 2023 15:23:31
    https://gitlab.synchro.net/main/sbbs/-/commit/cd997ea347ee9db7c5f3e474
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Resource cleanup on exit (when no module specified)Eliminates a SANITIZE build error
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows)@1:103/705 to Git commit to main/sbbs/master on Tuesday, August 08, 2023 17:43:51
    https://gitlab.synchro.net/main/sbbs/-/commit/40995ce1868fdb8cdbacf2a6
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Insure the exec_dir is *always* prepped (fix for Windows upgrade to v3.20)A "prepped" means directory means a relative path from the configuration files(or default settings) has been converted to a full/absolute path with properslashes for the platform (i.e. backslashes instead of forward-slashes onWindows).JSexec doesn't require that the new v3.20 ctrl/*.ini files exist to run; thiswas necessary to be able to run 'jsexec update -> upgrade_to_v320.js' whichdoes the ctrl/*.cnf to .ini file conversion (egg not required to buildchicken). When JSexec failed to load ctrl/msgs.ini(e.g. "!ERROR loading configuration files: 2 (No such file or directory)opening /sbbs/ctrl\msgs.ini"), it would continue to run, but not "prep" anyof the "path" settings (e.g. exec_dir).The first run of 'jsexec update.js' would fail to run upgrade_to_v320.exe(which does the v3.20 user base conversion) and a bunch of other (but not asimportant) update steps because Windows couldn't execute "../exec/*".Multiple errors would be displayed in this case, but the most important (asreported by Ree in #synchronet of irc.synchro.net) was: '..' is not recognized as an internal or external commandright after the status output: No v3.20 user base found, running ../exec/upgrade_to_v320Notice the "../exec/" prefix, which is not support by Windows when specifyinga file path to execute.A second run of 'jsexec update' would work fine because the new v3.20 .inifiles would be successfully created after the first run (though the user basewas not).This is likely the same issue that MRO reported recently when upgrading aWindows SBBS v3.19 install to v3.20 and not having the user base upgradedthe first time.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From rswindell@1:103/705 to CVS commit on Friday, October 20, 2023 20:19:52
    src/sbbs3 jsexec.c 1.206 1.207
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv32386

    Modified Files:
    jsexec.c
    Log Message:
    Restore cooked TTY mode *before* prompting for the user to hit ENTER when
    run with the '-p' or '-!' options. This resolve the issue of (on Win32)
    having to enter *twice* to close the program in this mode.


    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From deuce@1:103/705 to CVS commit on Friday, October 20, 2023 20:19:52
    src/sbbs3 jsexec.c 1.207 1.208
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv15318

    Modified Files:
    jsexec.c
    Log Message:
    Enable some interesting JS options for jsdoor only (for now).
    These almost certainly improve performance a bunch, but may result in
    new behaviours.



    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Friday, December 08, 2023 17:37:09
    https://gitlab.synchro.net/main/sbbs/-/commit/7b932f63e4f1d4275e55dfbf
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Only create/use a single run-time for use in JSexec, even when re-runnning

    The '-l' (loop) option would cause the JS runtime to be destroyed and
    recreated for each new execution of the script, which resulted in memory
    leaks in Windows builds (see issue #672 for details). So instead, just
    use a single JS runtime here when the -l option is used to prevent that
    from happening, though truth be told, that's likely not a normal/common occurrence. Other apparent JS-related memory leaks (e.g. in the web
    server) appear to be of a common concern.

    Likely upgrading to a modern libmozjs would also fix this issue, but
    we're far short of being able to do that right now.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Monday, February 05, 2024 22:18:08
    https://gitlab.synchro.net/main/sbbs/-/commit/b53254b6bcc9d02aae63da2e
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Resolve full path to specified ctrl directory, before chdir

    If a relative path to the ctrl directory is specified on the command-line
    or in the SBBSCTRL environment variable, the loading of ctrl/*.ini would
    fail after the changing of the working directory.

    We should probably get replace all use of FULLPATH with _fullpath someday,
    but for now, I just went with majority-rule.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Monday, February 05, 2024 22:27:55
    https://gitlab.synchro.net/main/sbbs/-/commit/7d3b61d7f59fcdf32e739baf
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    PATH_MAX (not an MSVC thing) -> MAX_PATH
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sunday, March 17, 2024 00:13:16
    https://gitlab.synchro.net/main/sbbs/-/commit/97fb3f1f463adc057fc05ea8
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Make Windows hack Windows-only

    We need _CIOLIB_main on macOS... at least until the curses stuff works.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sunday, March 17, 2024 01:35:53
    https://gitlab.synchro.net/main/sbbs/-/commit/1e48f1252859924638b52e96
    Modified Files:
    src/sbbs3/jsexec.c
    Log Message:
    Don't use the non-standard third parameter to main for enivronment

    Use the standard `extern char **environ' instead.
    Fixes an issue with macOS.

    Also, check that env is not NULL in js_init.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)