Падает Apache при отдаче изображений скриптом

Тема закрыта
370
.
Koenig
(\/)____o_O____(\/)
Screamer, прогони мемтест или s&m только память
можно конечно и сам фаил капчи глянуть
.
короче это походу не при отдаче гг,
ща провел небольшой дебаг и выяснилось что ложит сервак этот код, что именно ложит выяснить пока не удалось.
файл прилагается
$font_file = $fonts[mt_rand(0, count($fonts) - 1)];
            $font = imagecreatefrompng($font_file);
            imagealphablending($font, true);
            $fontfile_width = imagesx($font);
            $fontfile_height = imagesy($font) - 1;
            $font_metrics = array();
            $symbol = 0;
            $reading_symbol = false;
            // Loading fonts
            $alphabet_length = strlen($this->alphabet);
            for ($i = 0; $i < $fontfile_width && $symbol < $alphabet_length; $i++) {
                $transparent = (imagecolorat($font, $i, 0) >> 24) == 127;
                if (!$reading_symbol && !$transparent) {
                    $font_metrics[$this->alphabet{$symbol}] = array('start' => $i);
                    $reading_symbol = true;
                    continue;
                }
                if ($reading_symbol && $transparent) {
                    $font_metrics[$this->alphabet{$symbol}]['end'] = $i;
                    $reading_symbol = false;
                    $symbol++;
                    continue;
                }
            }
Прикрепленные файлы:
.
(\/)____o_O____(\/)
Screamer, вообще у меня класс был, который работал всегда по разному, иногда ложил апач, все зависило от последовательности выполнения действий над картинкой, обрезные, ресайзы, наклоны, грейскайл...
тут у тебя вижу страшный цикл со смещением байтов, хотя подобная штука у меня тоже была, работала, конверт в чб
.
(\/)____o_O____(\/)
этот класс ты взял готовый? или там есть твои куски? просто может быть косяк, так как с пнг все это собрать хочешь, когда логичнее и прочее с жпг, может еще шрифты кривые
.
Koenig, да, готовый, это со ждона капча. я же говорю, до смены железа все работало нормально.
и все таки я на разрядность оси грешу, сегодня ночью запилю вендосемь и гляну .
.
Koenig (18.03.2013 / 15:11)
или там есть твои куски?
мой кусок только метод index()
ну и поправил кое что что бы со своей цмской пахало, саму генерацию изображения не трогал
.
вобщем выяснилось что ложит imagecreategfrompng
погуглив нашел следующие решения:
указывать абсолютный путь к файлу (не помогло)
в php.ini установить первым загрузку gd (не помогло)
так же был замечен баг на FBSD 8 и PHP 5.2 обновление до PHP 5.3 помогло. (у меня как уже известно венда XP и php 5.3)
зашел на багтрекер php там ничего не нашел,
так же глянул в комментах в документации, там тоже ничего нет.
.
Поставил вин7 полет нормальный
</thread>
Всего: 18