]> granicus.if.org Git - php/commitdiff
Move (back) missing functions in system libgd to gd_compat
authorRemi Collet <remi@php.net>
Sun, 5 May 2013 07:54:27 +0000 (09:54 +0200)
committerRemi Collet <remi@php.net>
Sun, 5 May 2013 07:54:27 +0000 (09:54 +0200)
- display libPng version in all cases
- gd_compat.c in ext/gd (nothing in ext/gd/libgd)

ext/gd/config.m4
ext/gd/gd.c
ext/gd/gd_compat.c [new file with mode: 0644]
ext/gd/gd_compat.h [new file with mode: 0644]

index 748a352ed00ef2ab17f250a65b3ac9d860b925fb..957284e78fc898bf2108417b948595a7a57ef2a5 100644 (file)
@@ -336,6 +336,7 @@ else
 
  if test "$PHP_GD" != "no"; then
   GD_MODULE_TYPE=external
+  extra_sources="gd_compat.c"
 
 dnl Various checks for GD features
   PHP_GD_ZLIB
index 6147353cb609e5590cfbdcea14f54ad4ebea387e..d46344412010f6edab4e6a027d93b01ad7335e1e 100644 (file)
 # include <Wingdi.h>
 #endif
 
-#ifdef HAVE_GD_JPG
-# include <jpeglib.h>
-#endif
-
 #ifdef HAVE_GD_XPM
 # include <X11/xpm.h>
 #endif
 
 #ifndef HAVE_GD_BUNDLED
-#ifdef HAVE_GD_JPG
-int gdJpegGetVersionInt()
-{
-       return JPEG_LIB_VERSION;
-}
-
-const char * gdJpegGetVersionString()
-{
-       switch(JPEG_LIB_VERSION) {
-               case 62:
-                       return "6b";
-                       break;
-
-               case 70:
-                       return "7";
-                       break;
-
-               case 80:
-                       return "8";
-                       break;
-
-               default:
-                       return "unknown";
-       }
-}
-#endif /* HAVE_GD_JPG */
+# include "gd_compat.h"
 #endif /* HAVE_GD_BUNDLED */
 
 static int le_gd, le_gd_font;
@@ -1350,9 +1321,7 @@ PHP_MINFO_FUNCTION(gd)
 
 #ifdef HAVE_GD_PNG
        php_info_print_table_row(2, "PNG Support", "enabled");
-#ifndef HAVE_GD_BUNDLED
        php_info_print_table_row(2, "libPNG Version", gdPngGetVersionString());
-#endif
 #endif
        php_info_print_table_row(2, "WBMP Support", "enabled");
 #if defined(HAVE_GD_XPM)
diff --git a/ext/gd/gd_compat.c b/ext/gd/gd_compat.c
new file mode 100644 (file)
index 0000000..dbb16a5
--- /dev/null
@@ -0,0 +1,47 @@
+#include "php_config.h"
+
+#ifdef HAVE_GD_PNG
+/* needs to be first */
+# include <png.h>
+#endif
+
+#ifdef HAVE_GD_JPG
+# include <jpeglib.h>
+#endif
+
+#include "gd_compat.c"
+
+#ifdef HAVE_GD_JPG
+int gdJpegGetVersionInt()
+{
+       return JPEG_LIB_VERSION;
+}
+
+const char * gdJpegGetVersionString()
+{
+       switch(JPEG_LIB_VERSION) {
+               case 62:
+                       return "6b";
+                       break;
+
+               case 70:
+                       return "7";
+                       break;
+
+               case 80:
+                       return "8";
+                       break;
+
+               default:
+                       return "unknown";
+       }
+}
+#endif
+
+#ifdef HAVE_GD_PNG
+const char * gdPngGetVersionString()
+{
+       return PNG_LIBPNG_VER_STRING;
+}
+#endif
+
diff --git a/ext/gd/gd_compat.h b/ext/gd/gd_compat.h
new file mode 100644 (file)
index 0000000..ea812ea
--- /dev/null
@@ -0,0 +1,8 @@
+#ifndef GD_COMPAT_H
+#define GD_COMPAT_H 1
+
+const char * gdPngGetVersionString();
+const char * gdJpegGetVersionString();
+int gdJpegGetVersionInt();
+
+#endif /* GD_COMPAT_H */