imlib/draw: Fix fb_alloc aligned size.

Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
This commit is contained in:
iabdalkader 2025-02-09 06:04:59 +01:00
parent 62984c8342
commit ab3770cd2b

View File

@ -3135,14 +3135,11 @@ void imlib_draw_image(image_t *dst_img,
t_src_img.data = src_img->data;
}
// Query available on-chip RAM.
uint32_t size;
void *data = fb_alloc_all(&size, FB_ALLOC_PREFER_SPEED | FB_ALLOC_CACHE_ALIGN);
fb_free();
// Allocate a buffer to hold chunks of the transposed image while not using all of the on-chip RAM.
// Allocate a buffer to hold chunks of the transposed image.
size_t size = fb_avail();
size = (size & ~(OMV_ALLOC_ALIGNMENT - 1)) - OMV_ALLOC_ALIGNMENT;
size = IM_MIN(size, image_size(&t_src_img));
data = fb_alloc(size, FB_ALLOC_PREFER_SPEED | FB_ALLOC_CACHE_ALIGN);
void *data = fb_alloc(size, FB_ALLOC_PREFER_SPEED | FB_ALLOC_CACHE_ALIGN);
// line_num stores how many lines we can do at a time with on-chip RAM.
image_t temp = {.w = t_roi.w, .h = t_roi.h, .pixfmt = t_src_img.pixfmt};