Mombu the Php Forum sponsored links

Go Back   Mombu the Php Forum > Php > #42338 : Memory leak in SAPI.c
User Name
Password
REGISTER NOW! Mark Forums Read

sponsored links


Reply
 
1 3rd August 17:18
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c



From: programatorfreez at gmail dot com
Operating system: Gentoo GNU/Linux
PHP version: 5.2.4RC2
PHP Bug Type: Scripting Engine problem
Bug description: Memory leak in SAPI.c

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query . '=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full --gen-suppressions=yes
php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from 1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full --show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full --gen-suppressions=yes
--show-reachable=yes php -f /var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from 1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ---- ==31907==

==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss record
14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===

--
Edit bug report at http://bugs.php.net/?id=42338&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=42338&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=42338&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=42338&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=42338&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=42338&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=42338&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=42338&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=42338&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=42338&r=support
Expected behavior: http://bugs.php.net/fix.php?id=42338&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=42338&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=42338&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=42338&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=42338&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=42338&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=42338&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=42338&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=42338&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=42338&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=42338&r=mysqlcfg
  Reply With Quote


  sponsored links


2 3rd August 17:18
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c



ID: 42338
User updated by: programatorfreez at gmail dot com
Reported By: programatorfreez at gmail dot com
Status: Open
Bug Type: Scripting Engine problem
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

When i execute It without suhosin, the result is:
http://pastebin.ca/662282


Previous Comments:
------------------------------------------------------------------------

[2007-08-18 15:10:52] programatorfreez at gmail dot com

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query .
'=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full
--show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes --show-reachable=yes php -f
/var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ----
==31907==
==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10
of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13
of 14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss
record 14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


------------------------------------------------------------------------


--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
3 3rd August 20:03
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
User updated by: programatorfreez at gmail dot com
Reported By: programatorfreez at gmail dot com
-Status: Feedback
+Status: Open
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"


Previous Comments:
------------------------------------------------------------------------

[2007-08-19 20:04:07] jani@php.net

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)

------------------------------------------------------------------------

[2007-08-18 15:20:21] programatorfreez at gmail dot com

When i execute It without suhosin, the result is:
http://pastebin.ca/662282

------------------------------------------------------------------------

[2007-08-18 15:10:52] programatorfreez at gmail dot com

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query .
'=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full
--show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes --show-reachable=yes php -f
/var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ----
==31907==
==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10
of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13
of 14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss
record 14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


------------------------------------------------------------------------


--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
4 3rd August 20:04
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
Updated by: jani@php.net
Reported By: programatorfreez at gmail dot com
-Status: Open
+Status: Feedback
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)


Previous Comments:
------------------------------------------------------------------------

[2007-08-18 15:20:21] programatorfreez at gmail dot com

When i execute It without suhosin, the result is:
http://pastebin.ca/662282

------------------------------------------------------------------------

[2007-08-18 15:10:52] programatorfreez at gmail dot com

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query .
'=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full
--show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes --show-reachable=yes php -f
/var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ----
==31907==
==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10
of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13
of 14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss
record 14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


------------------------------------------------------------------------


--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
5 3rd August 20:04
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
Updated by: derick@php.net
Reported By: programatorfreez at gmail dot com
-Status: Open
+Status: Feedback
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

That's not your configure command... configure commands start with
"./configure"


Previous Comments:
------------------------------------------------------------------------

[2007-08-19 21:12:12] programatorfreez at gmail dot com

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"

------------------------------------------------------------------------

[2007-08-19 20:04:07] jani@php.net

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)

------------------------------------------------------------------------

[2007-08-18 15:20:21] programatorfreez at gmail dot com

When i execute It without suhosin, the result is:
http://pastebin.ca/662282

------------------------------------------------------------------------

[2007-08-18 15:10:52] programatorfreez at gmail dot com

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query .
'=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full
--show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes --show-reachable=yes php -f
/var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ----
==31907==
==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10
of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13
of 14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss
record 14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


------------------------------------------------------------------------


--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
6 3rd August 20:15
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
User updated by: programatorfreez at gmail dot com
Reported By: programatorfreez at gmail dot com
-Status: Feedback
+Status: Open
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

ACCEPT_KEYWORDS='~x86' USE="apache2 berkdb bzip2 cli crypt ctype debug
gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap
sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader
xmlwriter
xsl zlib" emerge -av dev-lang/php5

If you are not able to use ./configure --apache2, --berkdb, --bzip2,
--cli, etc. than It's your problem, not my.


Previous Comments:
------------------------------------------------------------------------

[2007-08-20 06:19:50] derick@php.net

That's not your configure command... configure commands start with
"./configure"

------------------------------------------------------------------------

[2007-08-19 21:12:12] programatorfreez at gmail dot com

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"

------------------------------------------------------------------------

[2007-08-19 20:04:07] jani@php.net

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)

------------------------------------------------------------------------

[2007-08-18 15:20:21] programatorfreez at gmail dot com

When i execute It without suhosin, the result is:
http://pastebin.ca/662282

------------------------------------------------------------------------

[2007-08-18 15:10:52] programatorfreez at gmail dot com

Description:
------------
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


Reproduce code:
---------------
<?php
// save as test.php into directory weblog in your HTDOCS
if (!isset($_GET['test'])) {
for ($i = 0; $i < 5; $i++) { // change $i < 5 to $i < 0 after first
running of this script
$query = str_repeat('[]', 1024);
$url = 'http://127.0.0.1/weblog/test.php?test' . $query .
'=1';
file_get_contents($url);
}
}

echo 'finished';
?>

Expected result:
----------------
No memory leak =)

Actual result:
--------------
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes php -f /var/www/localhost/htdocs/weblog/
test.php

==31902== Memcheck, a memory error detector.
==31902== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31902== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31902== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31902== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31902== For more details, rerun with: -v
==31902==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31902==
==31902== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31902== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31902== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31902== For counts of detected errors, rerun with: -v
==31902== searching for pointers to 1,505 not-freed blocks.
==31902== checked 1,359,216 bytes.
==31902==
==31902== LEAK SUMMARY:
==31902== definitely lost: 0 bytes in 0 blocks.
==31902== possibly lost: 0 bytes in 0 blocks.
==31902== still reachable: 26,319 bytes in 1,505 blocks.
==31902== suppressed: 0 bytes in 0 blocks.
==31902== Reachable blocks (those to which a pointer was found) are not
shown.
==31902== To see them, rerun with: --leak-check=full
--show-reachable=yes
sh-3.2# USE_ZEND_ALLOC=0 valgrind --leak-check=full
--gen-suppressions=yes --show-reachable=yes php -f
/var/www/localhost/htdocs/weblog/test.php
==31907== Memcheck, a memory error detector.
==31907== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== Using LibVEX rev 1732, a library for dynamic binary
translation.
==31907== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==31907== Using valgrind-3.2.3, a dynamic binary instrumentation
framework.
==31907== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et
al.
==31907== For more details, rerun with: -v
==31907==

Warning:
file_get_contents(http://127.0.0.1/weblog/test.php?test[][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][]!
[][][][][][][][][][][][][][][][][][
in /var/www/localhost/htdocs/weblog/test.php on line 6
finished==31907==
==31907== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 7 from
1)
==31907== malloc/free: in use at exit: 26,319 bytes in 1,505 blocks.
==31907== malloc/free: 17,148 allocs, 15,643 frees, 1,966,546 bytes
allocated.
==31907== For counts of detected errors, rerun with: -v
==31907== searching for pointers to 1,505 not-freed blocks.
==31907== checked 1,359,216 bytes.
==31907==
==31907== 20 bytes in 1 blocks are still reachable in loss record 1 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x40ED34B: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ----
==31907==
==31907==
==31907== 32 bytes in 1 blocks are still reachable in loss record 2 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4CE1B8E: suhosin_hook_session (in
/usr/lib/php5/lib/php/extensions/debug-non-zts-20060613/suhosin.so)
==31907==
==31907==
==31907== 56 bytes in 2 blocks are still reachable in loss record 3 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400C55B: _dl_map_object_deps (in /lib/ld-2.5.so)
==31907== by 0x40115B0: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 4 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A51D: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 67 bytes in 1 blocks are still reachable in loss record 5 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4007664: expand_dynamic_string_token (in
/lib/ld-2.5.so)
==31907== by 0x40080A2: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 96 bytes in 1 blocks are still reachable in loss record 6 of
14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400EFAC: _dl_check_map_versions (in /lib/ld-2.5.so)
==31907== by 0x4011838: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 188 bytes in 1 blocks are still reachable in loss record 7 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x4011398: add_to_global (in /lib/ld-2.5.so)
==31907== by 0x4011785: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 256 bytes in 1 blocks are still reachable in loss record 8 of
14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C799C: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 556 bytes in 1 blocks are still reachable in loss record 9 of
14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x46D48A4: _db_push_ (in
/usr/lib/mysql/libmysqlclient.so.15.0.0)
==31907==
==31907==
==31907== 667 bytes in 1 blocks are still reachable in loss record 10
of 14
==31907== at 0x4020B3D: calloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x400A268: _dl_new_object (in /lib/ld-2.5.so)
==31907== by 0x40062E7: _dl_map_object_from_fd (in /lib/ld-2.5.so)
==31907== by 0x4008162: _dl_map_object (in /lib/ld-2.5.so)
==31907== by 0x4011555: dl_open_worker (in /lib/ld-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x4010FD3: _dl_open (in /lib/ld-2.5.so)
==31907== by 0x40ECE3C: (within /lib/libdl-2.5.so)
==31907== by 0x400D6E5: _dl_catch_error (in /lib/ld-2.5.so)
==31907== by 0x40ED2DB: (within /lib/libdl-2.5.so)
==31907== by 0x40ECD73: dlopen (in /lib/libdl-2.5.so)
==31907== by 0x82C13C5: php_dl (in /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 11
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83C6DC8: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 1,024 bytes in 1 blocks are still reachable in loss record 12
of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x83AEA28: (within /usr/lib/php5/bin/php)
==31907== by 0x8090FD0: (within /usr/lib/php5/bin/php)
==31907==
==31907==
==31907== 4,096 bytes in 1 blocks are still reachable in loss record 13
of 14
==31907== at 0x4022BA0: realloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F8A3: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907==
==31907== 18,170 bytes in 1,491 blocks are still reachable in loss
record 14 of 14
==31907== at 0x4022A7E: malloc (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==31907== by 0x457F86B: (within /usr/lib/libcrypto.so.0.9.8)
==31907==
==31907== LEAK SUMMARY:
==31907== definitely lost: 0 bytes in 0 blocks.
==31907== possibly lost: 0 bytes in 0 blocks.
==31907== still reachable: 26,319 bytes in 1,505 blocks.
==31907== suppressed: 0 bytes in 0 blocks.


Apache error_log:
][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][$
[Sat Aug 18 16:24:38 2007] Script:
'/var/www/localhost/htdocs/weblog/test.php'
/var/tmp/portage/dev-lang/php-5.2.4_pre200708051230-r2/work/php5.2-200708051230/main/SAPI.c(940)
: Freeing 0x082A9C38 (10 bytes), script=/var$
Last leak repeated 1 time
=== Total 2 memory leaks detected ===


------------------------------------------------------------------------


--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
7 3rd August 23:19
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
Updated by: jani@php.net
Reported By: programatorfreez at gmail dot com
-Status: Open
+Status: Bogus
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

Uh..that comment causes immediate bogusing. Plus: You're using threaded
Apache, there's propably even more broken in your system than just that.


Previous Comments:
------------------------------------------------------------------------

[2007-08-20 16:00:49] programatorfreez at gmail dot com

ACCEPT_KEYWORDS='~x86' USE="apache2 berkdb bzip2 cli crypt ctype debug
gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap
sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader
xmlwriter
xsl zlib" emerge -av dev-lang/php5

If you are not able to use ./configure --apache2, --berkdb, --bzip2,
--cli, etc. than It's your problem, not my.

------------------------------------------------------------------------

[2007-08-20 06:19:50] derick@php.net

That's not your configure command... configure commands start with
"./configure"

------------------------------------------------------------------------

[2007-08-19 21:12:12] programatorfreez at gmail dot com

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"

------------------------------------------------------------------------

[2007-08-19 20:04:07] jani@php.net

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)

------------------------------------------------------------------------

[2007-08-18 15:20:21] programatorfreez at gmail dot com

When i execute It without suhosin, the result is:
http://pastebin.ca/662282

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/42338

--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
8 4th August 01:35
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
User updated by: programatorfreez at gmail dot com
Reported By: programatorfreez at gmail dot com
Status: Bogus
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

Jani: I don't understand you, what do you mean? There is *not* anything
broken in my system, that's why PHP 5.2.3 didn't report any memory leak
with the same code and (of course) with the same USE flags and I use
threaded apache for years without any problem (until now with PHP
5.2.4).


Previous Comments:
------------------------------------------------------------------------

[2007-08-21 07:35:56] jani@php.net

Uh..that comment causes immediate bogusing. Plus: You're using threaded
Apache, there's propably even more broken in your system than just that.

------------------------------------------------------------------------

[2007-08-20 16:00:49] programatorfreez at gmail dot com

ACCEPT_KEYWORDS='~x86' USE="apache2 berkdb bzip2 cli crypt ctype debug
gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap
sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader
xmlwriter
xsl zlib" emerge -av dev-lang/php5

If you are not able to use ./configure --apache2, --berkdb, --bzip2,
--cli, etc. than It's your problem, not my.

------------------------------------------------------------------------

[2007-08-20 06:19:50] derick@php.net

That's not your configure command... configure commands start with
"./configure"

------------------------------------------------------------------------

[2007-08-19 21:12:12] programatorfreez at gmail dot com

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"

------------------------------------------------------------------------

[2007-08-19 20:04:07] jani@php.net

And what was the configure line you used to configure PHP?
This is #1 thing you should put in a bug report anybody wants to even
look at. (It's mentioned on the page you submitted the bug from..)

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/42338

--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
9 4th August 13:44
php-bugs
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
User updated by: programatorfreez at gmail dot com
Reported By: programatorfreez at gmail dot com
-Status: Bogus
+Status: Open
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

'./configure' '--prefix=/usr/lib/php5' '--host=i686-pc-linux-gnu'
'--mandir=/usr/lib/php5/man' '--infodir=/usr/lib/php5/info'
'--sysconfdir=/etc' '--cache-file=./config.cache' '--disable-cli'
'--with-apxs2=/usr/sbin/apxs2'
'--with-config-file-path=/etc/php/apache2-php5'
'--with-config-file-scan-dir=/etc/php/apache2-php5/ext-active'
'--without-pear' '--disable-bcmath' '--with-bz2' '--disable-calendar'
'--without-curl' '--without-curlwrappers' '--disable-dbase'
'--disable-exif' '--without-fbsql' '--without-fdftk' '--disable-filter'
'--disable-ftp' '--with-gettext' '--without-gmp' '--disable-hash'
'--disable-ipv6' '--disable-json' '--without-kerberos'
'--enable-mbstring' '--with-mcrypt' '--without-mhash' '--without-msql'
'--without-mssql' '--with-ncurses' '--with-openssl'
'--with-openssl-dir=/usr' '--disable-pcntl' '--without-pgsql'
'--disable-posix' '--with-pspell' '--without-recode' '--disable-shmop'
'--without-snmp' '--enable-soap' '--enable-sockets' '--without-sybase'
'--without-sybase-ct' '--disable-sysvmsg' '--disable-sysvsem'
'--disable-sysvshm' '--without-tidy' '--disable-wddx' '--without-xmlrpc'
'--with-xsl' '--disable-zip' '--with-zlib' '--enable-debug'
'--enable-dba' '--without-cdb' '--with-db4' '--without-flatfile'
'--with-gdbm' '--without-inifile' '--without-qdbm'
'--with-freetype-dir=/usr' '--with-t1lib=/usr' '--disable-gd-jis-conv'
'--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--without-xpm-dir'
'--with-gd' '--with-mysql=/usr'
'--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--without-mysqli'
'--without-pdo-dblib' '--with-pdo-mysql=/usr' '--without-pdo-odbc'
'--without-pdo-pgsql' '--without-pdo-sqlite' '--with-readline'
'--without-libedit' '--without-mm' '--without-sqlite'


Previous Comments:
------------------------------------------------------------------------

[2007-08-21 20:20:04] programatorfreez at gmail dot com

Jani: I don't understand you, what do you mean? There is *not* anything
broken in my system, that's why PHP 5.2.3 didn't report any memory leak
with the same code and (of course) with the same USE flags and I use
threaded apache for years without any problem (until now with PHP
5.2.4).

------------------------------------------------------------------------

[2007-08-21 07:35:56] jani@php.net

Uh..that comment causes immediate bogusing. Plus: You're using threaded
Apache, there's propably even more broken in your system than just that.

------------------------------------------------------------------------

[2007-08-20 16:00:49] programatorfreez at gmail dot com

ACCEPT_KEYWORDS='~x86' USE="apache2 berkdb bzip2 cli crypt ctype debug
gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap
sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader
xmlwriter
xsl zlib" emerge -av dev-lang/php5

If you are not able to use ./configure --apache2, --berkdb, --bzip2,
--cli, etc. than It's your problem, not my.

------------------------------------------------------------------------

[2007-08-20 06:19:50] derick@php.net

That's not your configure command... configure commands start with
"./configure"

------------------------------------------------------------------------

[2007-08-19 21:12:12] programatorfreez at gmail dot com

Ok, next time I will remember. It was:
USE="apache2 berkdb bzip2 cli crypt ctype debug gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader xmlwriter
xsl zlib"

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/42338

--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote
10 4th August 13:44
External User
 
Posts: 1
Default #42338 : Memory leak in SAPI.c


ID: 42338
Updated by: jani@php.net
Reported By: programatorfreez at gmail dot com
-Status: Open
+Status: Feedback
Bug Type: *General Issues
Operating System: Gentoo GNU/Linux
PHP Version: 5.2.4RC2
New Comment:

Ever heard about '--disable-all' ? That disables all the
"enabled-by-default" extensions and you can just enable those you
actually need. Please shorten the configure line to shortest possible.

And about threaded stuff: there are dozens of libraries PHP can be
linked with which are not thread-safe. Why do you insist on using the
much slower threaded one anyway when you could have much more reliable
and non-leaking, fast PHP running under non-threaded webserver?


Previous Comments:
------------------------------------------------------------------------

[2007-08-27 21:37:25] programatorfreez at gmail dot com

'./configure' '--prefix=/usr/lib/php5' '--host=i686-pc-linux-gnu'
'--mandir=/usr/lib/php5/man' '--infodir=/usr/lib/php5/info'
'--sysconfdir=/etc' '--cache-file=./config.cache' '--disable-cli'
'--with-apxs2=/usr/sbin/apxs2'
'--with-config-file-path=/etc/php/apache2-php5'
'--with-config-file-scan-dir=/etc/php/apache2-php5/ext-active'
'--without-pear' '--disable-bcmath' '--with-bz2' '--disable-calendar'
'--without-curl' '--without-curlwrappers' '--disable-dbase'
'--disable-exif' '--without-fbsql' '--without-fdftk' '--disable-filter'
'--disable-ftp' '--with-gettext' '--without-gmp' '--disable-hash'
'--disable-ipv6' '--disable-json' '--without-kerberos'
'--enable-mbstring' '--with-mcrypt' '--without-mhash' '--without-msql'
'--without-mssql' '--with-ncurses' '--with-openssl'
'--with-openssl-dir=/usr' '--disable-pcntl' '--without-pgsql'
'--disable-posix' '--with-pspell' '--without-recode' '--disable-shmop'
'--without-snmp' '--enable-soap' '--enable-sockets' '--without-sybase'
'--without-sybase-ct' '--disable-sysvmsg' '--disable-sysvsem'
'--disable-sysvshm' '--without-tidy' '--disable-wddx' '--without-xmlrpc'
'--with-xsl' '--disable-zip' '--with-zlib' '--enable-debug'
'--enable-dba' '--without-cdb' '--with-db4' '--without-flatfile'
'--with-gdbm' '--without-inifile' '--without-qdbm'
'--with-freetype-dir=/usr' '--with-t1lib=/usr' '--disable-gd-jis-conv'
'--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--without-xpm-dir'
'--with-gd' '--with-mysql=/usr'
'--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--without-mysqli'
'--without-pdo-dblib' '--with-pdo-mysql=/usr' '--without-pdo-odbc'
'--without-pdo-pgsql' '--without-pdo-sqlite' '--with-readline'
'--without-libedit' '--without-mm' '--without-sqlite'

------------------------------------------------------------------------

[2007-08-21 20:20:04] programatorfreez at gmail dot com

Jani: I don't understand you, what do you mean? There is *not* anything
broken in my system, that's why PHP 5.2.3 didn't report any memory leak
with the same code and (of course) with the same USE flags and I use
threaded apache for years without any problem (until now with PHP
5.2.4).

------------------------------------------------------------------------

[2007-08-21 07:35:56] jani@php.net

Uh..that comment causes immediate bogusing. Plus: You're using threaded
Apache, there's propably even more broken in your system than just that.

------------------------------------------------------------------------

[2007-08-20 16:00:49] programatorfreez at gmail dot com

ACCEPT_KEYWORDS='~x86' USE="apache2 berkdb bzip2 cli crypt ctype debug
gd gdbm iconv mysql
ncurses nls pcre pdo readline reflection session simplexml soap
sockets
spell spl ssl suhosin tokenizer truetype unicode xml xmlreader
xmlwriter
xsl zlib" emerge -av dev-lang/php5

If you are not able to use ./configure --apache2, --berkdb, --bzip2,
--cli, etc. than It's your problem, not my.

------------------------------------------------------------------------

[2007-08-20 06:19:50] derick@php.net

That's not your configure command... configure commands start with
"./configure"

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/42338

--
Edit this bug report at http://bugs.php.net/?id=42338&edit=1
  Reply With Quote


  sponsored links


Reply


Thread Tools
Display Modes




Copyright © 2006 SmartyDevil.com - Dies Mies Jeschet Boenedoesef Douvema Enitemaus -
666