From: foobar Date: Tue, 7 Aug 2001 16:15:45 +0000 (+0000) Subject: @- Added support for GD2 image type for ImageCreateFromString() (Jani) X-Git-Tag: BEFORE_PARAM_PARSING_CHANGE~27 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=27fcd0509a6a06eb64cbce3eb3a9a59f0b3bfd54;p=php @- Added support for GD2 image type for ImageCreateFromString() (Jani) --- diff --git a/ext/gd/gd.c b/ext/gd/gd.c index c60dafbd61..51ac436b1f 100644 --- a/ext/gd/gd.c +++ b/ext/gd/gd.c @@ -945,7 +945,9 @@ static int _php_image_type (char data[8]) if (data == NULL) return -1; - if (!memcmp(data, php_sig_jpg, 3)) + if (!memcmp(data, php_sig_gd2, 3)) + return PHP_GDIMG_TYPE_GD2; + else if (!memcmp(data, php_sig_jpg, 3)) return PHP_GDIMG_TYPE_JPG; else if (!memcmp(data, php_sig_png, 3)) { if (!memcmp(data, php_sig_png, 8)) @@ -1047,12 +1049,21 @@ PHP_FUNCTION(imagecreatefromstring) case PHP_GDIMG_TYPE_WBM: #ifdef HAVE_GD_WBMP - im = _php_image_create_from_string (data, "WBMP",gdImageCreateFromWBMPCtx TSRMLS_CC); + im = _php_image_create_from_string (data, "WBMP", gdImageCreateFromWBMPCtx TSRMLS_CC); #else php_error(E_WARNING, "No WBMP support in this PHP build"); RETURN_FALSE; #endif - break; + break; + + case PHP_GDIMG_TYPE_GD2: +#ifdef HAVE_GD_GD2 + im = _php_image_create_from_string (data, "GD2", gdImageCreateFromGd2Ctx TSRMLS_CC); +#else + php_error(E_WARNING, "No GD2 support in this PHP build"); + RETURN_FALSE; +#endif + break; default: php_error(E_WARNING, "Data is not in a recognized format."); diff --git a/ext/gd/php_gd.h b/ext/gd/php_gd.h index f29695831b..94b7cfd570 100644 --- a/ext/gd/php_gd.h +++ b/ext/gd/php_gd.h @@ -56,6 +56,7 @@ PHPAPI extern const char php_sig_gif[3]; PHPAPI extern const char php_sig_jpg[3]; PHPAPI extern const char php_sig_png[3]; +PHPAPI const char php_sig_gd2[3] = {'g', 'd', '2'}; extern zend_module_entry gd_module_entry; #define phpext_gd_ptr &gd_module_entry