]> granicus.if.org Git - php/commitdiff
- MFH:
authorPierre Joye <pajoye@php.net>
Thu, 6 Nov 2008 10:23:52 +0000 (10:23 +0000)
committerPierre Joye <pajoye@php.net>
Thu, 6 Nov 2008 10:23:52 +0000 (10:23 +0000)
 - Fix linux build (static)
 - add gd[Format]Version[Int|String] first methods to work around the png
   header issues

ext/gd/gd.c
ext/gd/libgd/gd.h
ext/gd/libgd/gd_jpeg.c
ext/gd/libgd/gd_png.c

index dc53a349ea2278f54dd8d871493738f8c1e9e241..4c051a13d617cf6501e0b6c444637d6fc88d2123 100644 (file)
 #include "config.h"
 #endif
 
-#ifdef HAVE_GD_PNG
-/* needs to be first */
-#include <png.h>
-#endif
-
 #include "php.h"
 #include "php_ini.h"
 #include "ext/standard/head.h"
 
 #if HAVE_LIBGD
 
+#ifdef HAVE_GD_PNG
+/* needs to be first */
+# include <png.h>
+#endif
+
+#ifdef HAVE_GD_JPG
+# include <jpeglib.h>
+#endif
+
 static int le_gd, le_gd_font;
 #if HAVE_LIBT1
 #include <t1lib.h>
@@ -1328,15 +1332,15 @@ PHP_MINFO_FUNCTION(gd)
 #endif
 #ifdef HAVE_GD_JPG
        {
-               char tmp[256];
-               snprintf(tmp, sizeof(tmp), "%d", JPEG_LIB_VERSION);
+               char tmp[12];
+               snprintf(tmp, sizeof(tmp), "%d", gdJpegGetVersionInt());
                php_info_print_table_row(2, "JPG Support", "enabled");
                php_info_print_table_row(2, "libJPEG Version", tmp);
        }
 #endif
 #ifdef HAVE_GD_PNG
        php_info_print_table_row(2, "PNG Support", "enabled");
-       php_info_print_table_row(2, "libPNG Version", PNG_LIBPNG_VER_STRING);
+       php_info_print_table_row(2, "libPNG Version", gdPngGetVersionString());
 #endif
        php_info_print_table_row(2, "WBMP Support", "enabled");
 #if defined(HAVE_GD_XPM) && defined(HAVE_GD_BUNDLED)
index d51f0a88c6faf0f1832cc5927442a7d6aff7de29..dfadeeb7d77659d05698618b0dc34a52bb6dddac 100644 (file)
@@ -246,6 +246,9 @@ gdImagePtr gdImageCreateFromWBMPCtx(gdIOCtx *infile);
 gdImagePtr gdImageCreateFromJpeg(FILE *infile, int ignore_warning);
 gdImagePtr gdImageCreateFromJpegCtx(gdIOCtx *infile, int ignore_warning);
 
+int gdJpegGetVersionInt();
+const char * gdPngGetVersionString();
+
 /* A custom data source. */
 /* The source function must return -1 on error, otherwise the number
         of bytes fetched. 0 is EOF, not an error! */
index 9573c1cf695687d00b0fca8a8b1cada96b2a0450..a71469137f2870363ee29c7ed08de169e919db2a 100644 (file)
@@ -102,6 +102,11 @@ static void fatal_jpeg_error (j_common_ptr cinfo)
        exit (99);
 }
 
+int gdJpegGetVersionInt()
+{
+       return JPEG_LIB_VERSION;
+}
+
 /*
  * Write IM to OUTFILE as a JFIF-formatted JPEG image, using quality
  * QUALITY.  If QUALITY is in the range 0-100, increasing values
index 7591dc0c673ece5e0097dfa319a73713e22e05a0..e15ede73ccf75550ff84678de7aadd7505496ecc 100644 (file)
 
   ---------------------------------------------------------------------------*/
 
+const char * gdPngGetVersionString()
+{
+       return PNG_LIBPNG_VER_STRING;
+}
+
 #ifndef PNG_SETJMP_NOT_SUPPORTED
 typedef struct _jmpbuf_wrapper
 {