From: [EMAIL PROTECTED] Operating system: RH 7.1 PHP version: 4.0CVS-2002-03-14 PHP Bug Type: Arrays related Bug description: compact() causes core dump
<?php compact($GLOBALS); ?> Backtrace : bash-2.04$ gdb ../php core GNU gdb 5.0rh-5 Red Hat Linux 7.1 Copyright 2001 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux"... Core was generated by `../php compact.php'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libpam.so.0...done. Loaded symbols for /lib/libpam.so.0 Reading symbols from /lib/libcrypt.so.1...done. Loaded symbols for /lib/libcrypt.so.1 Reading symbols from /lib/libresolv.so.2...done. Loaded symbols for /lib/libresolv.so.2 Reading symbols from /lib/libm.so.6...done. Loaded symbols for /lib/libm.so.6 Reading symbols from /lib/libdl.so.2...done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /lib/libnsl.so.1...done. Loaded symbols for /lib/libnsl.so.1 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld-linux.so.2...done. Loaded symbols for /lib/ld-linux.so.2 #0 0x400e26fd in __strtol_internal () from /lib/libc.so.6 (gdb) bt #0 0x400e26fd in __strtol_internal () from /lib/libc.so.6 #1 0x080ce4a5 in zend_hash_find (ht=0x8122a08, arKey=0x8148124 "1", nKeyLength=2, pData=0xbf800088) at /usr/include/stdlib.h:303 #2 0x0805baa2 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x8149504, entry=0x814813c) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1286 #3 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x8149504, entry=0x8147bdc) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1305 #4 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x8149504, entry=0x8149484) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1305 #5 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x8149504, entry=0x8149484) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1305 #6 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x8149504, entry=0x8149484) and so on ... i 've been hitting enter to #58292 but there is more. About 10-15 seconds is needed for the script to crash PHP. Not only $GLOBALS related because <?php $a=array(1,array(2)); $a[1][1]=&$a; compact($a); ?> also causes core dump - but much faster - second or two. bash-2.04$ gdb ../php core GNU gdb 5.0rh-5 Red Hat Linux 7.1 Copyright 2001 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux"... Core was generated by `../php compact.php'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libpam.so.0...done. Loaded symbols for /lib/libpam.so.0 Reading symbols from /lib/libcrypt.so.1...done. Loaded symbols for /lib/libcrypt.so.1 Reading symbols from /lib/libresolv.so.2...done. Loaded symbols for /lib/libresolv.so.2 Reading symbols from /lib/libm.so.6...done. Loaded symbols for /lib/libm.so.6 Reading symbols from /lib/libdl.so.2...done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /lib/libnsl.so.1...done. Loaded symbols for /lib/libnsl.so.1 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld-linux.so.2...done. Loaded symbols for /lib/ld-linux.so.2 #0 0x0805bb11 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x814dd6c, entry=0x814dca4) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1301 1301 zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(entry), &pos); (gdb) bt #0 0x0805bb11 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x814dd6c, entry=0x814dca4) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1301 #1 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x814dd6c, entry=0x814dbdc) at /usr/samba/users/andy/412dev/php4-200203140300/ext/standard/array.c:1305 #2 0x0805bb31 in php_compact_var (eg_active_symbol_table=0x8122a08, return_value=0x814dd6c, entry=0x814dca4) -- Edit bug report at http://bugs.php.net/?id=16072&edit=1 -- Fixed in CVS: http://bugs.php.net/fix.php?id=16072&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=16072&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=16072&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=16072&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=16072&r=support Expected behavior: http://bugs.php.net/fix.php?id=16072&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=16072&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=16072&r=submittedtwice