summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/gd/gd.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/gd/gd.c b/ext/gd/gd.c
index c40b30db14..7b2c03672e 100644
--- a/ext/gd/gd.c
+++ b/ext/gd/gd.c
@@ -1577,10 +1577,17 @@ PHP_FUNCTION(imagecolorat)
ZEND_FETCH_RESOURCE(im, gdImagePtr, IM, -1, "Image", le_gd);
+#if HAVE_LIBGD20
+ if(im->truecolor) {
+ php_error(E_WARNING, "ImageColorAt does not work on TrueColor images");
+ RETURN_FALSE;
+ }
+#endif
+
convert_to_long_ex(x);
convert_to_long_ex(y);
- if (gdImageBoundsSafe(im, Z_LVAL_PP(x), Z_LVAL_PP(y))) {
+ if (im->pixels && gdImageBoundsSafe(im, Z_LVAL_PP(x), Z_LVAL_PP(y))) {
#if HAVE_LIBGD13
RETURN_LONG(im->pixels[Z_LVAL_PP(y)][Z_LVAL_PP(x)]);
#else