util/region: forbid "shrinking" a region with wlr_region_expand()

The logic isn't correct.
This commit is contained in:
Kirill Primak 2022-11-27 13:34:48 +03:00 committed by Simon Ser
parent 32fc23a383
commit 8f58c060fd
2 changed files with 4 additions and 2 deletions

View file

@ -39,8 +39,8 @@ void wlr_region_transform(pixman_region32_t *dst, const pixman_region32_t *src,
enum wl_output_transform transform, int width, int height); enum wl_output_transform transform, int width, int height);
/** /**
* Expands the region of `distance`. If `distance` is negative, it shrinks the * Expands the region by distance on both axis. distance must be
* region. * a non-negative number.
*/ */
void wlr_region_expand(pixman_region32_t *dst, const pixman_region32_t *src, void wlr_region_expand(pixman_region32_t *dst, const pixman_region32_t *src,
int distance); int distance);

View file

@ -111,6 +111,8 @@ void wlr_region_transform(pixman_region32_t *dst, const pixman_region32_t *src,
void wlr_region_expand(pixman_region32_t *dst, const pixman_region32_t *src, void wlr_region_expand(pixman_region32_t *dst, const pixman_region32_t *src,
int distance) { int distance) {
assert(distance >= 0);
if (distance == 0) { if (distance == 0) {
pixman_region32_copy(dst, src); pixman_region32_copy(dst, src);
return; return;