summaryrefslogtreecommitdiff
path: root/src/gd_rotate.c
diff options
context:
space:
mode:
authorOndřej Surý <ondrej@sury.org>2013-04-08 12:53:52 +0200
committerOndřej Surý <ondrej@sury.org>2013-04-08 12:53:52 +0200
commit15ea6bc5a109c5e1590af5c0425e248636dde259 (patch)
tree7ae275ed4725f4440e255bc292b75671f7b6983b /src/gd_rotate.c
parentc2711be4c98222df1f9b03efcddc6d81ace09609 (diff)
downloadlibgd-15ea6bc5a109c5e1590af5c0425e248636dde259.tar.gz
Fix several uninitialized variable reads, dereferences before NULL checks, resource leaks and some other minor errors
Diffstat (limited to 'src/gd_rotate.c')
-rw-r--r--src/gd_rotate.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/gd_rotate.c b/src/gd_rotate.c
index f5debea..fbd234c 100644
--- a/src/gd_rotate.c
+++ b/src/gd_rotate.c
@@ -224,12 +224,12 @@ gdImagePtr gdImageRotate90 (gdImagePtr src, int ignoretransparent)
f = gdImageGetPixel;
}
dst = gdImageCreateTrueColor(src->sy, src->sx);
- dst->transparent = src->transparent;
-
if (dst != NULL) {
int old_blendmode = dst->alphaBlendingFlag;
dst->alphaBlendingFlag = 0;
+ dst->transparent = src->transparent;
+
gdImagePaletteCopy (dst, src);
for (uY = 0; uY<src->sy; uY++) {
@@ -269,12 +269,13 @@ gdImagePtr gdImageRotate180 (gdImagePtr src, int ignoretransparent)
f = gdImageGetPixel;
}
dst = gdImageCreateTrueColor(src->sx, src->sy);
- dst->transparent = src->transparent;
if (dst != NULL) {
int old_blendmode = dst->alphaBlendingFlag;
dst->alphaBlendingFlag = 0;
+ dst->transparent = src->transparent;
+
gdImagePaletteCopy (dst, src);
for (uY = 0; uY<src->sy; uY++) {
@@ -315,12 +316,13 @@ gdImagePtr gdImageRotate270 (gdImagePtr src, int ignoretransparent)
f = gdImageGetPixel;
}
dst = gdImageCreateTrueColor (src->sy, src->sx);
- dst->transparent = src->transparent;
if (dst != NULL) {
int old_blendmode = dst->alphaBlendingFlag;
dst->alphaBlendingFlag = 0;
+ dst->transparent = src->transparent;
+
gdImagePaletteCopy (dst, src);
for (uY = 0; uY<src->sy; uY++) {