Merge branch 'bugfix/esp_ringbuf_32_bit_alignment_v5.3' into 'release/v5.3'

fix(ringbuf): allow xRingbufferCreateWithCaps to pass in non-32-bit aligned size (v5.3)

See merge request espressif/esp-idf!33520
This commit is contained in:
Jiang Jiang Jian
2024-09-21 14:53:34 +08:00

View File

@@ -1388,6 +1388,11 @@ RingbufHandle_t xRingbufferCreateWithCaps(size_t xBufferSize, RingbufferType_t x
StaticRingbuffer_t *pxStaticRingbuffer;
uint8_t *pucRingbufferStorage;
//Allocate memory
if (xBufferType != RINGBUF_TYPE_BYTEBUF) {
xBufferSize = rbALIGN_SIZE(xBufferSize); //xBufferSize is rounded up for no-split/allow-split buffers
}
pxStaticRingbuffer = heap_caps_malloc(sizeof(StaticRingbuffer_t), (uint32_t)uxMemoryCaps);
pucRingbufferStorage = heap_caps_malloc(xBufferSize, (uint32_t)uxMemoryCaps);