[common] rects: simplify unaligned copy function

This commit is contained in:
Geoffrey McRae 2023-11-11 09:07:00 +11:00
parent 0057cf5377
commit 8630fd20ad

View File

@ -27,15 +27,17 @@
#include "common/framebuffer.h" #include "common/framebuffer.h"
#include "common/types.h" #include "common/types.h"
inline static void rectCopyUnaligned(uint8_t * dest, const uint8_t * src, inline static void rectCopyUnaligned(uint8_t * dst, const uint8_t * src,
int ystart, int yend, int dx, int dstPitch, int srcPitch, int width) int ystart, int yend, int dx, int dstPitch, int srcPitch, int width)
{ {
src += ystart * srcPitch + dx;
dst += ystart * dstPitch + dx;
for (int i = ystart; i < yend; ++i) for (int i = ystart; i < yend; ++i)
{ {
unsigned int srcOffset = i * srcPitch + dx; memcpy(dst, src, width);
unsigned int dstOffset = i * dstPitch + dx; src += srcPitch;
memcpy(dest + dstOffset, src + srcOffset, width); dst += dstPitch;
} }
} }
void rectsBufferToFramebuffer(FrameDamageRect * rects, int count, int bpp, void rectsBufferToFramebuffer(FrameDamageRect * rects, int count, int bpp,