Я добавил следующую строку внутри цикла, и она заработала:
select STDOUT;
Я думаю, что функция code in process () должна была изменять выходной буфер по умолчанию. Это был код, написанный кем-то другим!
Я не уверен, если это проблема с Perl, который позволяет это или разработчику, который не изменил его обратно на значение по умолчанию.
Итоговый код выглядел так:
foreach(...)
{
...
foreach(...)
{
select STDOUT;
print("Processing $folder");
$|=1;
process($folder);
}
...
}
Спасибо всем ...