• src/sbbs3/atcodes.cpp src/sbbs3/scfg/scfgsys.c src/sbbs3/termaudio.c t

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thursday, September 24, 2026 21:22:49
    https://gitlab.synchro.net/main/sbbs/-/commit/728a0e49610370d63fdd16c4
    Modified Files:
    src/sbbs3/atcodes.cpp src/sbbs3/scfg/scfgsys.c src/sbbs3/termaudio.c termaudio.h termaudio_cache.cpp termaudio_test.c text/sound/README.txt
    Log Message:
    Make @CACHE_AUDIO: preload the file @MUSIC: and @SOUND: will play

    Preloading a large file did not work, for two independent reasons.

    @CACHE_AUDIO: resolved its argument under text/, while @SOUND: and
    @MUSIC: resolve under text/sound/, so "@CACHE_AUDIO:theme.ogg@" and "@MUSIC:theme.ogg@" named different files. All three now resolve through
    one function, termaudio_resolve_sound(), taking a bare filename in
    text/sound/.

    @SOUND: and @MUSIC: also enforced max_sound_file_size before checking
    whether the client already held the file, so a file larger than that
    limit was refused even after @CACHE_AUDIO: had sent it. The limit bounds
    what may be sent while a display file is drawing, so it now applies only
    when an upload is actually needed. Before reading, a file is refused only
    if it exceeds both limits, since nothing larger could have been cached.

    Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

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