diff --git a/src/systemcmds/hardfault_log/hardfault_log.c b/src/systemcmds/hardfault_log/hardfault_log.c index e37c407aef..4fd1def5aa 100644 --- a/src/systemcmds/hardfault_log/hardfault_log.c +++ b/src/systemcmds/hardfault_log/hardfault_log.c @@ -311,16 +311,16 @@ static int write_stack(bool inValid, int winsize, uint32_t wtopaddr, for (int i = 0; i < chunk; i++) { if (wtopaddr == topaddr) { strncpy(marker, "<-- ", sizeof(marker)); - strncat(marker, sp_name, sizeof(marker)); + strncat(marker, sp_name, sizeof(marker) - 1); strncat(marker, " top", sizeof(marker)); } else if (wtopaddr == spaddr) { strncpy(marker, "<-- ", sizeof(marker)); - strncat(marker, sp_name, sizeof(marker)); + strncat(marker, sp_name, sizeof(marker) - 1); } else if (wtopaddr == botaddr) { strncpy(marker, "<-- ", sizeof(marker)); - strncat(marker, sp_name, sizeof(marker)); + strncat(marker, sp_name, sizeof(marker) - 1); strncat(marker, " bottom", sizeof(marker)); } else {