From 68bdcd2b59fea4b6a5e92efe3da874a2f4411e3e Mon Sep 17 00:00:00 2001 From: Kalle Sommer Nielsen Date: Tue, 4 Aug 2009 11:19:07 +0000 Subject: [PATCH] Revert and correct previous fix, this does not loose precision and convert back to int --- ext/gd/gd.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ext/gd/gd.c b/ext/gd/gd.c index 45267c4b6b..230b0d452a 100644 --- a/ext/gd/gd.c +++ b/ext/gd/gd.c @@ -3956,10 +3956,10 @@ PHP_FUNCTION(imagepstext) bg_al = gdImageAlpha(bg_img, _bg); for (i = 0; i < aa_steps; i++) { - rd = bg_rd + (int) (fg_rd - bg_rd) / aa_steps * (i + 1); - gr = bg_gr + (int) (fg_gr - bg_gr) / aa_steps * (i + 1); - bl = bg_bl + (int) (fg_bl - bg_bl) / aa_steps * (i + 1); - al = bg_al + (int) (fg_al - bg_al) / aa_steps * (i + 1); + rd = (int) (bg_rd + (double) (fg_rd - bg_rd) / aa_steps * (i + 1)); + gr = (int) (bg_gr + (double) (fg_gr - bg_gr) / aa_steps * (i + 1)); + bl = (int) (bg_bl + (double) (fg_bl - bg_bl) / aa_steps * (i + 1)); + al = (int) (bg_al + (double) (fg_al - bg_al) / aa_steps * (i + 1)); aa[i] = gdImageColorResolveAlpha(bg_img, rd, gr, bl, al); } -- 2.50.1