]> granicus.if.org Git - php/commitdiff
Use correct data types here, and gdImageSaveAlpha for the alpha flag
authorKalle Sommer Nielsen <kalle@php.net>
Sat, 25 Apr 2009 06:20:26 +0000 (06:20 +0000)
committerKalle Sommer Nielsen <kalle@php.net>
Sat, 25 Apr 2009 06:20:26 +0000 (06:20 +0000)
ext/gd/libgd/gd.c

index 911f94f901f730f4486d82dd4835d7d2772a050b..1e88c727fc4c78baba1c33714b68438d55c06a04 100644 (file)
@@ -3863,7 +3863,7 @@ int gdImageConvolution(gdImagePtr src, float filter[3][3], float filter_div, flo
        int         x, y, i, j, new_a;
        float       new_r, new_g, new_b;
        int         new_pxl, pxl=0;
-       gdImagePtr  srcback, srctrans;
+       gdImagePtr  srcback;
        typedef int (*FuncPtr)(gdImagePtr, int, int);
        FuncPtr f;
 
@@ -3876,9 +3876,10 @@ int gdImageConvolution(gdImagePtr src, float filter[3][3], float filter_div, flo
        if (srcback==NULL) {
                return 0;
        }
-       srcback->saveAlphaFlag = 1;
-       srctrans = gdImageColorAllocateAlpha(srcback, 0, 0, 0, 127);
-       gdImageFill(srcback, 0, 0, srctrans);
+
+       gdImageSaveAlpha(srcback, 1);
+       new_pxl = gdImageColorAllocateAlpha(srcback, 0, 0, 0, 127);
+       gdImageFill(srcback, 0, 0, new_pxl);
 
        gdImageCopy(srcback, src,0,0,0,0,src->sx,src->sy);