]> granicus.if.org Git - php/commitdiff
@- Added support for GD2 image type for ImageCreateFromString() (Jani)
authorfoobar <sniper@php.net>
Tue, 7 Aug 2001 16:15:45 +0000 (16:15 +0000)
committerfoobar <sniper@php.net>
Tue, 7 Aug 2001 16:15:45 +0000 (16:15 +0000)
ext/gd/gd.c
ext/gd/php_gd.h

index c60dafbd616d2243a83788b15284db837fa8e33b..51ac436b1fb5278aebf3b36f53f8a725d6e3cbc9 100644 (file)
@@ -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.");
index f29695831bec18ad06a7c5b5503a07a47734728b..94b7cfd57065e898ee0c534d466a2d8646c178c0 100644 (file)
@@ -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