Вот я одно место в коде не понимаю, точнее, в поведении либц.
/* `strsep' can pass an empty string. This has to be
interpreted as `use the current directory'. */
if (len == 0)
{
static const char curwd[] = "./";
cp = (char *) curwd;
}
Вот если мы в PATH, LD_PRELOAD и т.п. добавим ::, то оно прочитается как ./
Да это ещё и специальный случай! Зачем? Не лучше ли пустые строки просто игнорировать, а весь софт, который из-за этого ломается, научить добавлять туда :.: по-человечески?
Кто-нибудь знает, зачем это сделали именно так?
Ответ на:
комментарий
от lodin
Ответ на:
комментарий
от lodin
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Какая-то фигня с виртуальными методами (2014)
- Форум Список несовместимых изменений в Perl'е 5.28 (2017)
- Форум Исследование CryEngine 2 SDK 1.4.0 (2012)
- Форум Java Многопоточность, Очереди (2017)
- Форум Бинарная совместимость, серия 3 (2023)
- Форум Вышел SBCL 1.3.15. (2017)
- Форум qutebrowser (2024)
- Форум MOD_PYTHON ERROR - DJANGO+APACHE (2012)
- Форум Вышел zsh 5.4.2 (2017)
- Форум невидия сегфолтится(потому что у неё есть кэш шейдеров) (2018)