From 2fc4f18729c30a4a775bcc47583f91a9fafee4d0 Mon Sep 17 00:00:00 2001 From: Gatsby Van Date: Tue, 5 Nov 2024 23:57:29 +0800 Subject: [PATCH] fix(systembus): align data length to prevent unaligned memory copy operations --- src/systembus/systembus_uart.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/systembus/systembus_uart.c b/src/systembus/systembus_uart.c index 8163d01..2f6d2b0 100644 --- a/src/systembus/systembus_uart.c +++ b/src/systembus/systembus_uart.c @@ -175,7 +175,7 @@ int SysbusUart_Recv(SYSBUS_UART *instPtr, SYSBUS_UART_FRAME *frame) { return EPARAM; } - dWLen = (dLen + FRAME_HEAD_LEN + FRAME_INFO_LEN - 1) / 4 + 1; + dWLen = NORMALIZE_SIZE(dLen + FRAME_HEAD_LEN + FRAME_INFO_LEN) / sizeof(uint32_t); dBuff = malloc(sizeof(uint32_t) * dWLen); if (dBuff == NULL) @@ -262,4 +262,4 @@ bool SysbusUart_IsTxBusy(SYSBUS_UART *instPtr) /** @} SystemBus_UART*/ -/** @} SystemBus*/ \ No newline at end of file +/** @} SystemBus*/