iliaa           Mon Jul 26 20:27:06 2004 EDT

  Modified files:              
    /php-src/ext/gd     config.m4 gd.c 
  Log:
  Fixed bug #29349 (imagecreatefromstring() crashes with external GD library)
  
  Original Patch By: adconrad at debian dot org
  
  
http://cvs.php.net/diff.php/php-src/ext/gd/config.m4?r1=1.145&r2=1.146&ty=u
Index: php-src/ext/gd/config.m4
diff -u php-src/ext/gd/config.m4:1.145 php-src/ext/gd/config.m4:1.146
--- php-src/ext/gd/config.m4:1.145      Thu Jul 22 18:38:59 2004
+++ php-src/ext/gd/config.m4    Mon Jul 26 20:27:06 2004
@@ -1,5 +1,5 @@
 dnl
-dnl $Id: config.m4,v 1.145 2004/07/22 22:38:59 sesser Exp $
+dnl $Id: config.m4,v 1.146 2004/07/27 00:27:06 iliaa Exp $
 dnl
 
 dnl
@@ -259,6 +259,7 @@
   PHP_CHECK_LIBRARY(gd, gdImageGifCtx,          [AC_DEFINE(HAVE_GD_GIF_CTX,          
1, [ ])], [], [ -L$GD_LIB $GD_SHARED_LIBADD ])
   PHP_CHECK_LIBRARY(gd, gdCacheCreate,          [AC_DEFINE(HAVE_GD_CACHE_CREATE,     
1, [ ])], [], [ -L$GD_LIB $GD_SHARED_LIBADD ])
   PHP_CHECK_LIBRARY(gd, gdFontCacheShutdown,    [AC_DEFINE(HAVE_GD_THREAD_SAFE,      
1, [ ])], [], [ -L$GD_LIB $GD_SHARED_LIBADD ])
+  PHP_CHECK_LIBRARY(gd, gdNewDynamicCtxEx,      [AC_DEFINE(HAVE_GD_DYNAMIC_CTX_EX    
1, [ ])], [], [ -L$GD_LIB $GD_SHARED_LIBADD ])
 ])
 
 dnl
@@ -308,6 +309,7 @@
   AC_DEFINE(HAVE_GD_GIF_READ,         1, [ ])
   AC_DEFINE(HAVE_GD_GIF_CREATE,       1, [ ])
   AC_DEFINE(HAVE_GD_IMAGEELLIPSE,     1, [ ])
+  AC_DEFINE(HAVE_GD_DYNAMIC_CTX_EX,   1, [ ])
 
 dnl Make sure the libgd/ is first in the include path
   GDLIB_CFLAGS="-DHAVE_LIBPNG"
http://cvs.php.net/diff.php/php-src/ext/gd/gd.c?r1=1.296&r2=1.297&ty=u
Index: php-src/ext/gd/gd.c
diff -u php-src/ext/gd/gd.c:1.296 php-src/ext/gd/gd.c:1.297
--- php-src/ext/gd/gd.c:1.296   Thu Jul 22 22:28:18 2004
+++ php-src/ext/gd/gd.c Mon Jul 26 20:27:06 2004
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: gd.c,v 1.296 2004/07/23 02:28:18 edink Exp $ */
+/* $Id: gd.c,v 1.297 2004/07/27 00:27:06 iliaa Exp $ */
 
 /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center,
    Cold Spring Harbor Labs. */
@@ -115,6 +115,10 @@
 int gdImageColorClosestHWB(gdImagePtr im, int r, int g, int b);
 #endif
 
+#ifndef HAVE_GD_DYNAMIC_CTX_EX
+#define gdNewDynamicCtxEx(len, data, val) gdNewDynamicCtx(len, data)
+#endif
+
 /* Section Filters Declarations */
 /* IMPORTANT NOTE FOR NEW FILTER
  * Do not forget to update:
@@ -1343,7 +1347,7 @@
 #ifdef HAVE_GD_WBMP
        else {
                gdIOCtx *io_ctx;
-               io_ctx = gdNewDynamicCtx(8, data);
+               io_ctx = gdNewDynamicCtxEx(8, data, 0);
                if (io_ctx) {
                        if (getmbi((int(*)(void *)) gdGetC, io_ctx) == 0 && 
skipheader((int(*)(void *)) gdGetC, io_ctx) == 0 ) {
 #if HAVE_LIBGD204
@@ -1375,7 +1379,7 @@
        gdImagePtr im;
        gdIOCtx *io_ctx;
 
-       io_ctx = gdNewDynamicCtx (Z_STRLEN_PP(data), Z_STRVAL_PP(data));
+       io_ctx = gdNewDynamicCtxEx(Z_STRLEN_PP(data), Z_STRVAL_PP(data), 0);
 
        if (!io_ctx) {
                return NULL;
@@ -1530,7 +1534,7 @@
                        goto out_err;
                }
 
-               io_ctx = gdNewDynamicCtx(buff_size, buff);
+               io_ctx = gdNewDynamicCtxEx(buff_size, buff, 0);
                if (!io_ctx) {
                        php_error_docref(NULL TSRMLS_CC, E_WARNING,"Cannot allocate GD 
IO context");
                        goto out_err;

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to