LINUX.ORG.RU

Ash/dash и local внутри цикла while.

 , , ,


0

1

Добрый вечер.

Обнаружил, что использование ключевого слова local внутри цикла while приводит к утечке памяти, если в качестве шелла используется ash(тестировал версию из busybox)/dash. Пример проблемного кода

#!/bin/sh

test()
{
   while [ true ]; do
      local a=
   done
}

test

А вот bash нормально такое прожевывает.

Вопрос - это бага или фича?

приводит к утечке памяти
бага или фича
фича
утечка памяти

Хм, интересный вариант. Спасибо, будет над чем поразмыслить вечером...

Kroz ★★★★★
()
Ответ на: комментарий от Kroz

Я могу тебе сейчас на перле код с циклическими ссылками написать - тоже течет. Но фиксить это никто не будет, поскольку, типа, фича.

Vovka-Korovka ★★★★★
() автор топика

Что-то мне подсказывает, что здесь не будет разработчиков что одного, что другого — напишите отчет об ошибке, да и узнаете. Допускаю даже, что получите два разных ответа.

Zmicier ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.