FreeTRX/MDUV380_firmware/application/source
Marcus Kida 9eceb10013 Fix crash announcing menu strings past the voice-prompt table
voicePromptsAppendLanguageString() turns a language-string pointer into a
prompt index (NUM_VOICE_PROMPTS + offset), and voicePromptsPlay() then reads
tableOfContents[index + 1]. Strings added after the voice-prompt pack was
built (the SMS menu entries) land past the 368-entry table, so the player
read off the end of the array and the radio crashed when the Messages menu
announced a submenu name with voice prompts enabled.

Clamp any index at or beyond the last table slot to PROMPT_SILENCE, so such
strings are simply not spoken. Also protects the pre-existing strings sitting
at the very end of the table.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 17:31:09 +02:00
..
dmr_codec Fix DMR hang: call AMBE codec via C function pointers, not inline asm 2026-07-06 11:14:06 +02:00
functions Fix crash announcing menu strings past the voice-prompt table 2026-07-13 17:31:09 +02:00
hardware DMR text messages (SMS): ETSI/Motorola-TMS messaging on the radio 2026-07-13 16:52:54 +02:00
interfaces Initial Commit 2026-07-06 08:45:33 +02:00
io Fix: green LED flicker between red mute flashes during a DMR QSO 2026-07-12 13:15:23 +02:00
linkerdata Initial Commit 2026-07-06 08:45:33 +02:00
usb Initial Commit 2026-07-06 08:45:33 +02:00
user_interface DMR text messages (SMS): ETSI/Motorola-TMS messaging on the radio 2026-07-13 16:52:54 +02:00
applicationMain.c DMR text messages (SMS): ETSI/Motorola-TMS messaging on the radio 2026-07-13 16:52:54 +02:00