• src/sbbs3/getnode.cpp

    From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Thu Apr 10 20:03:20 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/54985c55951f5b33fcb2136d
    Modified Files:
    src/sbbs3/getnode.cpp
    Log Message:
    Use term->cond_newline() for brevity

    No functional change
    --- SBBSecho 3.24-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 Fri Dec 19 17:41:46 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/6b4a1dc452ebe46b0f00adef
    Modified Files:
    src/sbbs3/getnode.cpp
    Log Message:
    Auto-detect UTF-8 encoded instant messages (telegrams, notifications)

    Part of the fix for issue #1034
    --- SBBSecho 3.33-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 Sat Mar 7 19:47:06 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/c7e802a680a228500b944d3f
    Modified Files:
    src/sbbs3/getnode.cpp
    Log Message:
    Fix node number in a couple of the error messages from getnodedat()

    Also using [F]CLOSE_OPEN_FILE function-like macros to simplify code
    --- SBBSecho 3.37-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 Mon Jul 6 20:44:06 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/efd77fec752a8affc9918b48
    Modified Files:
    src/sbbs3/getnode.cpp
    Log Message:
    getnodedat(): don't leak the node.dab record lock on a seek failure

    Restructure the retry loop to seek before locking (matching the C
    getnodedat() in userdat.c): previously a seeknodedat() failure after a successful lock() continued the loop without unlocking, so on Windows
    (where locking an already-held region fails) one transient seek failure poisoned all remaining retries. Also drop the pointless unlock() after
    a *failed* lock() and only unlock on a short read when we actually
    locked the record. Plus an uncrustify whitespace pass over the file.

    Noticed while reviewing the node status reset retry of 46ebc4f26 (desk-23-lamp). Validated against an isolated scratch terminal server: connect/disconnect exercises the locked getnodedat()/putnodedat() path
    and the node record returns to waiting-for-connection with no NODE.DAB
    errors logged.

    Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)