Bug 28292 - На рекурсивном вызове функции падает с Segmentation Fault
Summary: На рекурсивном вызове функции падает с Segmentation Fault
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: php5 (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-12-31 00:56 MSK by Vitaly Lipatov
Modified: 2015-01-27 20:21 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vitaly Lipatov 2012-12-31 00:56:52 MSK
# rpm -q php5
php5-5.3.18.20121017-alt1.1

Вызываем следующий код ($ php test.php):
<?php
function iii($n)
{
    iii($n);
}

iii('test');
?>

Получаем Segmentation Fault (ну видимо стек переполняется), с полной непонятной, отчего это. Впрочем подключение xdebug сразу показывает место ошибки.

На Ubuntu 12.10 (php5-cli 5.4.6-1ubuntu1) всё приличнее:
PHP Fatal error:  Out of memory (allocated -1145307136) (tried to allocate 65484 bytes) in /root/iii.php on line 4

На Fedora 17 (php-cli 5.4.9-1.fc17) так:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 65484 bytes) in /root/iii.php on line 4
Comment 1 Vitaly Lipatov 2012-12-31 01:19:27 MSK
Если выставить suhosin.executor.max_depth = 100
то завершается молча (ну то есть в очередной раз функция не вызывается, стек раскручивается обратно и всё хорошо).
Comment 2 Anton Farygin 2015-01-23 12:45:15 MSK
$ php ~/test.php
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 130968 bytes) in /home/rider/test.php on line 4

$rpm -q php5
php5-5.5.20-alt1