From 7e548e1ca59e1348e97235d7b3e250f37e7845e9 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Thu, 23 Dec 1999 23:30:16 +0000 Subject: [PATCH] fix missing case in scaling for blending objects... SVN revision: 1752 --- src/blend.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/blend.c b/src/blend.c index 5f591d6..8bc2b70 100644 --- a/src/blend.c +++ b/src/blend.c @@ -1406,6 +1406,19 @@ __imlib_BlendImageToImage(ImlibImage *im_src, ImlibImage *im_dst, } } } + else + { + if (!IMAGE_HAS_ALPHA(im_src)) + blend = 0; + if (!IMAGE_HAS_ALPHA(im_dst)) + merge_alpha = 0; + __imlib_BlendRGBAToData(im_src->data, im_src->w, im_src->h, + im_dst->data, im_dst->w, im_dst->h, + ssx, ssy, + ddx, ddy, + ssw, ssh, blend, merge_alpha, cm, op); + return; + } /* if we are scaling the image at all make a scaling buffer */ /* allocate a buffer to render scaled RGBA data into */ buf = malloc(dw * LINESIZE * sizeof(DATA32)); @@ -1418,7 +1431,6 @@ __imlib_BlendImageToImage(ImlibImage *im_src, ImlibImage *im_dst, } free(ypoints); free(xpoints); - return; } /* setup h */ h = dh;