#20368 [Opn->Csd]: Gd 2.0.4 (and possibly previous ones)

From: Date: Mon, 11 Nov 2002 20:46:43 +0000
Subject: #20368 [Opn->Csd]: Gd 2.0.4 (and possibly previous ones)
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-24619@lists.php.net to get a copy of this message
ID: 20368 Updated by: derick@php.net Reported By: einar@grep.no -Status: Open +Status: Closed Bug Type: GD related Operating System: Linux PHP Version: 4.2.2 New Comment: This bug has been fixed in CVS. In case this was a PHP problem, snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. In case this was a documentation problem, the fix will show up soon at http://www.php.net/manual/. In case this was a PHP.net website problem, the change will show up on the PHP.net site and on the mirror sites in short time. Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2002-11-11 14:46:22] einar@grep.no GD 2.0.4's gd_io header uses gd_free instead of free in its gdIOctx structure.. This affect phproot/ext/gd/gd.c and phproot/ext/gd/gd_ctx.c.. A mere 5 replacements must be done... The following terribly simple patch can be applied, if anyone's lazy.. :P diff -Naur php-4.2.3/ext/gd/gd.c php-4.2.3-gd2-2.0.4/ext/gd/gd.c --- php-4.2.3/ext/gd/gd.c 2002-09-03 15:09:29.000000000 +0200 +++ php-4.2.3-gd2-2.0.4/ext/gd/gd.c 2002-11-11 21:35:30.000000000 +0100 @@ -1011,10 +1011,10 @@ io_ctx = gdNewDynamicCtx (8, data); if (io_ctx) { if (getmbi(gdGetC, io_ctx) == 0 && skipheader(gdGetC, io_ctx) == 0 ) { - io_ctx->free(io_ctx); + io_ctx->gd_free(io_ctx); return PHP_GDIMG_TYPE_WBM; } else - io_ctx->free(io_ctx); + io_ctx->gd_free(io_ctx); } } #endif @@ -1206,7 +1206,7 @@ } else { im = (*ioctx_func_p)(io_ctx); } - io_ctx->free(io_ctx); + io_ctx->gd_free(io_ctx); #endif } else { if (image_type == PHP_GDIMG_TYPE_GD2PART) { diff -Naur php-4.2.3/ext/gd/gd_ctx.c php-4.2.3-gd2-2.0.4/ext/gd/gd_ctx.c --- php-4.2.3/ext/gd/gd_ctx.c 2001-08-05 18:21:29.000000000 +0200 +++ php-4.2.3-gd2-2.0.4/ext/gd/gd_ctx.c 2002-11-11 21:35:37.000000000 +0100 @@ -67,7 +67,7 @@ ctx = emalloc(sizeof(gdIOCtx)); ctx->putC = _php_image_output_putc; ctx->putBuf = _php_image_output_putbuf; - ctx->free = _php_image_output_ctxfree; + ctx->gd_free = _php_image_output_ctxfree; #if APACHE && defined(CHARSET_EBCDIC) /* XXX this is unlikely to work any more thies@thieso.net */ @@ -95,7 +95,7 @@ break; } - ctx->free(ctx); + ctx->gd_free(ctx); if(fp) { fflush(fp); ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=20368&edit=1

« previous php.bugs (#24619) next »