• src/sbbs3/prntfile.cpp

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Mar 24 21:49:53 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/479bd24c574ad0dbe6461d09
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    De-dupe random menu filenames by truncating at first dot, rather than last.

    Fix for one of the problems described in issue #380.

    bbs.menu("random*"); would display column-width-specific files (e.g. random.132col.msg) even when they weren't appropriate for the current
    user terminal width.

    This is fixed by truncating the filenames matching the requested pattern at their first-dot rather than the last.

    The downside is, you can't have a set of random.#.* files, where # is the unique part of the filename and * is the file-type extension. Just use
    the naming pattern "random-#.*" instead (or something similar) instead.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Mar 24 23:14:29 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/a8db694b2acee8cc66221bea
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Use text/menu/*.###col.* display files for even-wider terminals

    e.g. display basename.132col.msg even if the terminal is 133+ columns wide.

    Fixes issue #380.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu Mar 24 23:58:06 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/e3ba24274983408008b1bf32
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Revert to *.XXcol.* being an exact column width, add *.cXX.* support

    That previous commit made all *.40col.msg files display for 80 column users. Not my intention.

    So revert to the previous behavior of *.XXcol.* display files. I didn't want to go renaming a bunch of menu files as a result of the previous commit and I didn't want a bunch of sysops with *.XXcol.* files to be suddenly surprised at their new BBS behavior.

    And introduce a new file naming convention, *.cXX.* (where XX is a MINIMUM column width). This is the same naming convention used by Mystic, which also treats it is as a minimum terminal width, not a required exact width.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Fri Mar 25 00:37:53 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/9ac7335f36e51bfd13f953e4
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Detect/display menu files, even if only a .ans version exists

    I'm so tired of this 30 year old frequently asked question.

    If a sysop really wants their Synchronet BBS to only work correctly for ANSI users, I suppose that should be their prerogative.

    I always felt that by not detecting/displaying menu files when the minimum set of files was not present, I was helping sysops to identify an issue with their system (which would not work correctly for non-ANSI users). *And* I always felt that having a single menu/display file that correctly supported both ANSI and non-ANSI users was a nice convenience (who really wants to maintain multiple versions of their menu files?). But I'm so tired of answering this question, I just give up.

    Hopefully this doesn't break anything for anyone. <shrug>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From MRO@VERT/BBSESINF to Rob Swindell on Fri Mar 25 05:31:47 2022
    Re: src/sbbs3/prntfile.cpp
    By: Rob Swindell to Git commit to main/sbbs/master on Fri Mar 25 2022 12:37 am

    I'm so tired of this 30 year old frequently asked question.

    If a sysop really wants their Synchronet BBS to only work correctly for ANSI users, I suppose that should be their prerogative.
    I always felt that by not detecting/displaying menu files when the minimum set of files was not present, I was helping sysops to identify an issue with their system (which would not work correctly for non-ANSI users). *And* I always felt that having a single menu/display file that correctly supported both ANSI and non-ANSI users was a nice convenience (who really wants to maintain multiple versions of their menu files?). But I'm so tired of answering this question, I just give up.

    thanks for giving up.
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From Digital Man@VERT to MRO on Fri Mar 25 12:35:07 2022
    Re: src/sbbs3/prntfile.cpp
    By: MRO to Rob Swindell on Fri Mar 25 2022 05:31 am

    thanks for giving up.

    I feel for the dozens of PETSCII terminal users that might be impacted.
    Oh well. :-)
    --
    digital man (rob)

    This Is Spinal Tap quote #20:
    Well, I'm sure I'd feel much worse if I weren't under such heavy sedation. Norco, CA WX: 81.9øF, 28.0% humidity, 5 mph ESE wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From MRO@VERT/BBSESINF to Digital Man on Fri Mar 25 15:26:51 2022
    Re: src/sbbs3/prntfile.cpp
    By: Digital Man to MRO on Fri Mar 25 2022 12:35 pm

    Re: src/sbbs3/prntfile.cpp
    By: MRO to Rob Swindell on Fri Mar 25 2022 05:31 am

    thanks for giving up.

    I feel for the dozens of PETSCII terminal users that might be impacted.
    Oh well. :-)

    maybe have it do a special entry in the log file.
    ---
    þ Synchronet þ ::: BBSES.info - free BBS services :::
  • From Digital Man@VERT to MRO on Fri Mar 25 14:18:00 2022
    Re: src/sbbs3/prntfile.cpp
    By: MRO to Digital Man on Fri Mar 25 2022 03:26 pm

    Re: src/sbbs3/prntfile.cpp
    By: Digital Man to MRO on Fri Mar 25 2022 12:35 pm

    Re: src/sbbs3/prntfile.cpp
    By: MRO to Rob Swindell on Fri Mar 25 2022 05:31 am

    thanks for giving up.

    I feel for the dozens of PETSCII terminal users that might be impacted. Oh well. :-)

    maybe have it do a special entry in the log file.

    I'm thinking just have chksetup.js detect/report when a menu set is missing a .asc or .msg version.
    --
    digital man (rob)

    Synchronet/BBS Terminology Definition #24:
    DOVE = Domain/Vertrauen
    Norco, CA WX: 85.1øF, 32.0% humidity, 7 mph SSE wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sat Mar 26 20:03:49 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/519459c5e1197bd66262b3d5
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    De-duplicate at the first '.' following the filename, not the path

    Fix the fix to issue #380.

    Thanks for letting me know Keyop.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Aug 26 17:10:47 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/46c603ce3c9eba660f425cc4
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Fix NULL pointer deref in random_menu()

    When no files with extensions are found, though they matched the glob() pattern, a NULL pointer deref would result (segfault).

    This could happen if the only files matching the pattern had no extenions or were directories (not files).

    Fix for issue #779

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Thu Oct 10 22:23:27 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/b656e19ff168e27583a33c26
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Report error when menu() can't find a display file and P_NOERROR not used

    This issue was introduced in commit d02fc1a2 (3 years ago), where menu() would silenty fail (just return false) if no display file matching the supported menu/display file types/extensions could be found.

    Previous to commit d02fc1a2, we would log a NOTICE-level message and display
    a "File not found" message to the user (what sbbs_t::printfile() does), but since d02fc1a2, we no longer even call printfile() when the file doesn't
    exist, so no error was logged or message displayed to the user.

    Of course, when using the P_NOERROR mode flag, silent failure is expected and that's still what happens in that case.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sun Oct 13 02:26:14 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/639781e2ad929914bf27f469
    Modified Files:
    src/sbbs3/prntfile.cpp
    Log Message:
    Don't use global menu_dir for calls to menu() with path starting with '.'

    For scripts that set the global menu_dir (e.g. via JS bbs.menu_dir), let's
    not require that all the files moved from text to text/menu (for example).

    Problem reported by Amessyroom when using his custom shell and bullseye.js.

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