synth: rename blit.c/blit.h to blep.c/blep.h to match actual algorithm

The oscillator core implements minBLEP-style synthesis (naive waveform
plus a precomputed band-limited step correction table, ppBLEP) rather
than classic impulse-train BLIT synthesis, despite the old BLIT_*
naming. Renamed the source files and all BLIT_* identifiers to BLEP_*
throughout src/synth (blep.c/h, vco.c/h, synth_defs.h, config.mk) and
updated the CLAUDE.md/TODO.md references accordingly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01262jWgCmReCRdUi6u9cRYa
This commit is contained in:
2026-07-31 18:23:53 +02:00
co-authored by Claude Sonnet 5
parent 9f26df3dbe
commit 0aeb3c23df
8 changed files with 111 additions and 111 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ Findings from a code-review pass over `src/plug` and `src/synth` (2026-07-27, br
## Memory management (fixed)
- [x] **`new[]`/`delete` mismatches (UB) in `JaySynth`'s destructor** — `m_pVoices`, `pPer_voice_controls`, `pCurrNoteInfos`, `humanize_voice_param[i]`, `ppHumanizedSliders[i]`, `m_ppAudioThread`, `m_ppEventAudioThreadRdy` (`src/plug/JaySynth.cpp`) all now freed with `delete[]` to match their `new T[n]` allocations. Also found and fixed the same pattern via `ScopedPointer` in `PluginProcessor.cpp` (`setStateInformation`/`setCurrentProgramStateInformation`) — `ScopedPointer` always calls scalar `delete` (per JUCE's own doc comment), so `ScopedPointer<char> pUncompressedData = new char[...]` was the same bug; replaced with `HeapBlock<char>`, JUCE's array-owning smart pointer.
- [x] **`malloc` was never null-checked** across the C DSP core. Added a shared `SynthCheckAlloc()` helper (`synth_defs.h`/`synth_debug.c`) that aborts with a clear diagnostic instead of returning NULL, and wrapped all 24 `malloc` call sites across `env.c`, `lfo.c`, `vcf.c`, `vco.c`, `blit.c`, `wavetable.c`, `voice.c`, `param_scale.c`. All are one-time init/bufsize-change calls, never in the per-block render path, so this adds no real-time overhead.
- [x] **`malloc` was never null-checked** across the C DSP core. Added a shared `SynthCheckAlloc()` helper (`synth_defs.h`/`synth_debug.c`) that aborts with a clear diagnostic instead of returning NULL, and wrapped all 24 `malloc` call sites across `env.c`, `lfo.c`, `vcf.c`, `vco.c`, `blep.c`, `wavetable.c`, `voice.c`, `param_scale.c`. All are one-time init/bufsize-change calls, never in the per-block render path, so this adds no real-time overhead.
## Patch/Bank import-export (fixed)