This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch master
in repository legacy-imlib2.
View the commit online.
commit f7a61bff9f223e4bafe3d2a0a9f12aace02a7525
Author: NRK <[email protected]>
AuthorDate: Sun Apr 26 23:36:04 2026 +0000
scale: support flips with uscaler
---
src/lib/scale.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/src/lib/scale.c b/src/lib/scale.c
index bc93a5e..44663cc 100644
--- a/src/lib/scale.c
+++ b/src/lib/scale.c
@@ -232,13 +232,13 @@ __imlib_CalcScaleInfo(const ImlibImage *im, int sw, int sh, int dw, int dh,
isi->pix_assert = im->data + im->w * im->h;
#ifdef ENABLE_USCALER
- if (aa && dw > 0 && dh > 0 && scw > 0 && sch > 0 &&
- !im->border.left && !im->border.right &&
+ if (aa && !im->border.left && !im->border.right &&
!im->border.top && !im->border.bottom)
{
static float weights[256][4];
static int weights_initialized;
UscExtra extra = {.bicubic_weights = weights };
+ UscFlipFlags flip = USC_FLIP_NONE;
if (!weights_initialized)
{
@@ -250,13 +250,21 @@ __imlib_CalcScaleInfo(const ImlibImage *im, int sw, int sh, int dw, int dh,
if (!isi->usc_ctx)
goto bail;
- if (usc_ctx_init(isi->usc_ctx, im->w, im->h, scw, sch, &extra) < 0)
+ if (dw < 0)
+ flip |= USC_FLIP_X;
+ if (dh < 0)
+ flip |= USC_FLIP_Y;
+
+ if (usc_ctx_init(isi->usc_ctx, im->w, im->h,
+ abs(scw), abs(sch), &extra) < 0)
{
free(isi->usc_ctx);
isi->usc_ctx = NULL;
goto bail;
}
+ usc_ctx_set_flip(isi->usc_ctx, flip);
+
return isi;
}
#endif
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.