[devel] [JT] glibc: обработка пустых подстрок в PATH, LD_PRELOAD etc
Konstantin S. Uvarin
=?iso-8859-1?q?khedin_=CE=C1_mail=2Eru?=
Чт Мар 27 13:26:42 MSK 2008
Приветствую.
Давно не дает мне покоя один вопрос: для чего glibc интерпретирует пустую
подстроку в $PATH, $LD_PRELOAD и т.п. как текущий каталог? Ведь если
пользователю нужно именно текущий каталог указать, он и укажет PATH=$PATH:.
А так получается, что команда PATH=$PATH:$SOMEVAR делает не то, что
задумывалось, если SOMEVAR неопределена.
Причем я смотрел код, это специально выделено в отдельный случай и написан
комментарий даже. Зачем, зачем это сделано? Не понимаю...
In elf/dl-load.c, function fillin_rpath:
/* `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;
}
--
Konstantin S. Uvarin
Главный редактор, крякнув, осушил стопку. Новости радостно закрякали в ответ.
Подробная информация о списке рассылки Devel