From ca161d800e8a503d4109cf706c70611f8ecb9d85 Mon Sep 17 00:00:00 2001 From: skal Date: Thu, 12 Feb 2026 01:07:31 +0100 Subject: fix: WAV dump header corruption and early exit handling - wav_dump_backend: Fix data_size double-counting channels (line 126) - test_wav_dump: Assert on data_size validation instead of warning - main: Add SIGINT/SIGTERM handlers to finalize WAV on Ctrl+C - Guard signal handler code with DEMO_HEADLESS ifdef Co-Authored-By: Claude Sonnet 4.5 --- src/audio/backend/wav_dump_backend.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/audio') diff --git a/src/audio/backend/wav_dump_backend.cc b/src/audio/backend/wav_dump_backend.cc index 3f72c87..7427fa9 100644 --- a/src/audio/backend/wav_dump_backend.cc +++ b/src/audio/backend/wav_dump_backend.cc @@ -123,7 +123,7 @@ void WavDumpBackend::write_wav_header(FILE* file, uint32_t num_samples) { const uint32_t bits_per_sample = 16; const uint32_t byte_rate = sample_rate * num_channels * bits_per_sample / 8; const uint16_t block_align = num_channels * bits_per_sample / 8; - const uint32_t data_size = num_samples * num_channels * bits_per_sample / 8; + const uint32_t data_size = num_samples * bits_per_sample / 8; // RIFF header fwrite("RIFF", 1, 4, file); -- cgit v1.2.3