https://gitlab.synchro.net/main/sbbs/-/commit/2ba9f7dd255cf0182e36eb22
Modified Files:
src/doors/syncdoom/syncdoom.c src/doors/termgfx/audio_mgr.c
Log Message:
SyncDOOM: fix no-audio in multiplayer + silence the muster waiting room
Audio: the SyncTERM audio-capability probe reply was lost in a netgame. The connect handshake (D_CheckNetGame/BlockUntilStart) stalls the input pump for seconds, so the reply arrives coalesced in one large read -- and termgfx's cap-probe parser kept only the last 32 bytes of a read, discarding a reply buried earlier. Now it scans the whole buffer (rolling window kept only as a cross-feed fallback). The C waiting room (sd_waitroom_run) also drained the terminal socket without feeding the audio manager, throwing the reply away before pump_input could see it; it now feeds sd_audio at both read sites. Both host and joiner get SFX + music.
Muster: with the JS lobby muster gathering everyone before anyone connects, the C waiting room is just the near-instant connect->launch handshake. A new -mustered flag makes sd_waitroom_run skip its splash draw and launch beep, so it
no longer flashes on top of the lobby's "Joining..." (the joiner sees the game, not a redundant C splash).
Co-Authored-By: Claude Opus 4.8 <
noreply@anthropic.com>
Claude-Session:
https://claude.ai/code/session_01KYmBzSZGyRondAXevh9RJP
--- SBBSecho 3.37-Linux
* Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)