зачем здесь ансейф? ноги лишние? ) 1) там есть рейс кондишон: допустим, в момент, когда выполняется if, директория не существует. но в этот момент происходит переключение контекста, приложение "засыпает", и кто-то другой создаёт директорию с этим именем. тут наше приложение пробуждается, мы пытаемся создать директорию, возвращается ошибка, но мы делаем unwrap_unchecked => undefined behavior 2) создание директории может провалиться даже при условии, что директории с таким именем нет, поэтому unchecked здесь — чистой воды ногострел
почитай про паттерны EAFP и LBYL в расте недавно обнаружилась серьёзная уязвимость из-за второго поэтому лучше просто попытаться создать директорию и обработать результат
Интересно как они закрыли эту уязвимость. Есть какой-то особенный сисколл блокировки от подмены на симлинк?
Обсуждают сегодня