Edit report at https://bugs.php.net/bug.php?id=62892&edit=1
ID: 62892 Updated by: fel...@php.net Reported by: r dot wilczek at web-appz dot de Summary: ReflectionClass::getTraitAliases crashes on importing trait methods as private -Status: Open +Status: Closed Type: Bug Package: Reflection related Operating System: Linux PHP Version: 5.4.6 -Assigned To: +Assigned To: felipe Block user comment: N Private report: N New Comment: This bug has been fixed in SVN. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. For Windows: http://windows.php.net/snapshots/ Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2012-08-22 13:41:00] fel...@php.net Automatic comment on behalf of felipe...@gmail.com Revision: http://git.php.net/?p=php-src.git;a=commit;h=7a56ac00a04d4fc72052bb679626e723da3eef44 Log: - Fixed bug #62892 (ReflectionClass::getTraitAliases crashes on importing trait methods as private) ------------------------------------------------------------------------ [2012-08-22 12:17:09] r dot wilczek at web-appz dot de Description: ------------ When importing a traitmethod 'as private', ReflectionClass::getTraitAliases() segfaults. Test script: --------------- File testme.php: <?php trait myTrait { public function run() {} } class myClass { use myTrait { MyTrait::run as private; } } $class = new \ReflectionClass('myClass'); $class->getTraitAliases(); ?> Commandline: /usr/bin/php testme.php Expected result: ---------------- no segmentation fault Actual result: -------------- Segmentation fault gdb /usr/bin/php core ... This GDB was configured as "x86_64-suse-linux". ... Reading symbols from /usr/bin/php...done. [New LWP 27460] ... Core was generated by `php testme.php'. Program terminated with signal 11, Segmentation fault. #0 0x00000000009c7c66 in zend_symtable_update (ht=0x7f907f86f918, arKey=0x0, nKeyLength=1515870811, pData=0x7ffff0ad0990, nDataSize=8, pDest=0x0) at /root/php-5.4.6/Zend/zend_hash.h:350 350 /root/php-5.4.6/Zend/zend_hash.h: Datei oder Verzeichnis nicht gefunden. in /root/php-5.4.6/Zend/zend_hash.h bt #0 0x00000000009c7c66 in zend_symtable_update (ht=0x7f907f86f918, arKey=0x0, nKeyLength=1515870811, pData=0x7ffff0ad0990, nDataSize=8, pDest=0x0) at /root/php-5.4.6/Zend/zend_hash.h:350 #1 0x00000000009ccc81 in add_assoc_stringl_ex (arg=0x7f907f86f1c0, key=0x0, key_len=1515870811, str=0x7f907f86f238 "MyTrait::run", length=12, duplicate=0) at /root/php-5.4.6/Zend/zend_API.c:1234 #2 0x000000000074373e in zim_reflection_class_getTraitAliases (ht=0, return_value=0x7f907f86f1c0, return_value_ptr=0x0, this_ptr=0x7f90855eeed0, return_value_used=0) at /root/php-5.4.6/ext/reflection/php_reflection.c:4475 #3 0x0000000000a05c70 in zend_do_fcall_common_helper_SPEC (execute_data=0x7f90855b20e8) at /root/php-5.4.6/Zend/zend_vm_execute.h:642 #4 0x0000000000a06b1d in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0x7f90855b20e8) at /root/php-5.4.6/Zend/zend_vm_execute.h:752 #5 0x0000000000a0464f in execute (op_array=0x7f90855efec8) at /root/php-5.4.6/Zend/zend_vm_execute.h:410 #6 0x00000000009c792a in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /root/php-5.4.6/Zend/zend.c:1289 #7 0x000000000093c7e4 in php_execute_script (primary_file=0x7ffff0ad4290) at /root/php-5.4.6/main/main.c:2473 #8 0x0000000000b0d616 in do_cli (argc=2, argv=0x7ffff0ad4648) at /root/php-5.4.6/sapi/cli/php_cli.c:988 #9 0x0000000000b0e6be in main (argc=2, argv=0x7ffff0ad4648) at /root/php-5.4.6/sapi/cli/php_cli.c:1364 ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=62892&edit=1