From: Ilia Alshanetsky Date: Tue, 2 Nov 2004 16:41:26 +0000 (+0000) Subject: Fixed bug #30658 (Ensure that temporary files created by GD are removed). X-Git-Tag: php-5.0.3RC1~97 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c7b537e2c3c5e8fe1ac6cf10dd846d281dc5d3ba;p=php Fixed bug #30658 (Ensure that temporary files created by GD are removed). --- diff --git a/ext/gd/gd.c b/ext/gd/gd.c index f00e46f65a..7e33487fbe 100644 --- a/ext/gd/gd.c +++ b/ext/gd/gd.c @@ -1767,8 +1767,9 @@ static void _php_image_output(INTERNAL_FUNCTION_PARAMETERS, int image_type, char int b; FILE *tmp; char buf[4096]; + char *path; - tmp = php_open_temporary_file("", "", NULL TSRMLS_CC); + tmp = php_open_temporary_file("", "", &path TSRMLS_CC); if (tmp == NULL) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to open temporary file"); RETURN_FALSE; @@ -1823,7 +1824,8 @@ static void _php_image_output(INTERNAL_FUNCTION_PARAMETERS, int image_type, char } fclose(tmp); - /* the temporary file is automatically deleted */ + VCWD_UNLINK((const char *)path); /* make sure that the temporary file is removed */ + efree(path); } RETURN_TRUE; }