[PHP-users 18169]Re: イメージ出力によるメモリ消費
Youichi Iwakiri
yiwakiri @ st.rim.or.jp
2003年 10月 1日 (水) 18:23:06 JST
いわきりです
Seiji Masugata wrote in <200310010817.h918HHDM069382 @ azusa.digicom.dnp.co.jp> :
>PHP4.3.4RC1のQA最中ですので、バグだったら直してもらえそうな
>予感。。。
gd.cを見ましたが、imagedestroy()では、php側のリソースは解放しています
が、ilbgd(gdImageCreate*)で確保した領域を開放していないようです。
以下のpatchで直るとは思いますが、
---------- ここから
--- gd/gd.c Fri Jun 20 00:48:07 2003
+++ gd_patch/gd.c Wed Oct 1 18:13:41 2003
@@ -1786,6 +1786,7 @@
ZEND_FETCH_RESOURCE(im, gdImagePtr, IM, -1, "Image", le_gd);
+ gdImageDestroy(im);
zend_list_delete(Z_LVAL_PP(IM));
RETURN_TRUE;
---------- ここまで
PHP_MINIT_FUNCTION(gd)
{
le_gd = zend_register_list_destructors_ex(php_free_gd_image, NULL, "gd", module_number);
モジュールのイニシャライズ時にデストラクタとして、
gdImageDestroy()を呼ぶphp_free_gd_image()を登録しているんですが、
これはモジュールシャットダウン時だけでリクエストシャットダウン時は
呼ばれないんでしたっけ?
--
Youichi Iwakiri
PHP-users メーリングリストの案内