Fix blit bleed for windows with x() < 0.

This commit is contained in:
Andreas Kling 2019-01-09 02:51:53 +01:00
parent 659c54e32b
commit baec8925a8
Notes: sideshowbarker 2024-07-19 16:05:47 +09:00

View file

@ -74,7 +74,7 @@ void FrameBufferSDL::blit(const Point& position, GraphicsBitmap& bitmap)
for (int y = 0; y < dst_rect.height(); ++y) {
auto* framebuffer_scanline = scanline(position.y() + y);
auto* bitmap_scanline = bitmap.scanline(y);
memcpy(framebuffer_scanline + position.x(), bitmap_scanline, dst_rect.width() * 4);
memcpy(framebuffer_scanline + dst_rect.x(), bitmap_scanline + (dst_rect.x() - position.x()), dst_rect.width() * 4);
}
}