summaryrefslogtreecommitdiffstats
path: root/sd
diff options
context:
space:
mode:
authorJan-Marek Glogowski <jan-marek.glogowski@extern.cib.de>2019-10-10 14:48:22 +0200
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2019-10-12 21:53:39 +0200
commitedcb363f5eeefcc2ce28a2ab7a57d61b744466cd (patch)
tree266f725ce659580c203a636cd995d10ffee3bf2a /sd
parentaarch64 callVirtualFunction needs to be compiled w/o -fstack-clash-protection (diff)
downloadcore-edcb363f5eeefcc2ce28a2ab7a57d61b744466cd.tar.gz
core-edcb363f5eeefcc2ce28a2ab7a57d61b744466cd.zip
tdf#40534 correctly match page with memory slab
LO has a page manager to match system memory backbuffers with graphics memory on DX accelerated Windows. Internally this uses an other rectangle implementation, the SurfaceRect, which had some great comments like: // a size of [0,0] therefore denotes a one-by-one rectangle. In commit 230dbe2e43f3ee2cd285f9cdfe0d57e1ca08b8fe ("#144866# Add one pixel border around textures, a bunch of drivers clobber those with dirt), the allocation was increased by a pixel border, but this doesn't work correctly, because now an allocation of the page size wouldn't fit anymore into a page, because the pages size is decreased before comparison. In the end the mixup suffered from hard to handle off-by-one problems. This patch fixes the bug, but eventually SurfaceRect should be replaced by an extended basegfx::B2IBox. But since B2IBox uses two ranges, instead of a point and a size, it would need a lot of conversations to I2Point and I2Size objects with the current Page::insert algorithm. Change-Id: Ia725b4f8ed4fb270f2eb3734e492062bc7f13793 Reviewed-on: https://gerrit.libreoffice.org/80628 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> (cherry picked from commit 194e7ce17ae7ca278c12d03bc25684b7437f9785) Reviewed-on: https://gerrit.libreoffice.org/80669 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'sd')
0 files changed, 0 insertions, 0 deletions