• src/doors/clans-src/src/v

    From Deuc¿@VERT to Git commit to main/sbbs/m on Sat Mar 7 22:13:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/2f9201f109084286af95cffb
    Modified Files:
    src/doors/clans-src/src/village.c
    Log Message:
    Clean up scheme stuff.

    If a ruler defines a custom scheme, save it as "Custom" and actually
    load it properly.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/m on Fri Mar 13 14:48:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/144dbf301064f1039b506c49
    Modified Files:
    src/doors/clans-src/src/video.c
    Log Message:
    Fix Windows ScrollUp crash: correct SMALL_RECT off-by-one errors

    SMALL_RECT coordinates are inclusive on all sides. dwSize.X and dwSize.Y
    return buffer dimensions, but must be decremented to get the last valid
    index when used as rectangle bounds.

    Fixed in three functions:
    - ScrollUp(): scroll_rect.Right (line 183)
    - save_screen(): rect_rw.Right and rect_rw.Bottom (lines 1285-1286)
    - restore_screen(): rect_write.Right and rect_write.Bottom (lines 1312-1313)

    Also fixed ClearArea() Windows implementation (lines 890-899):
    - COORD pos struct was missing .Y initialization
    - pos.Y was never updated in the loop, causing all FillConsoleOutput*
    calls to target the same garbage Y coordinate
    - Now initializes .Y and updates it each iteration

    This resolves crashes in ScrollConsoleScreenBuffer, ReadConsoleOutput, WriteConsoleOutput, and FillConsoleOutputCharacter on Windows.

    Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>

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