Open stiv-sigmal opened 9 years ago
Исторически это ранее началось - когда сломался сам механизм работы с файловыми симлинками, а сейчас отголоски той старой проблемы вылезли. Ладно, есть повод подумать. Наверняка можно более красивое решение придумать и то что есть не поломать. Алгоритм придумать можно, но всё равно придётся ждать пока появится кто из ребят имеющий доступ к телу.:)
Пробуйте NetBox v2.1.42.385:
https://yadi.sk/d/98j19YjZhNgH7 - FarNetBox-2.1.42_Far3_x64.7z
SHA-256: 4258876924ac8e86f57aaf46163e965694ebc88c44f9c3850ede0ad92a205425 *FarNetBox-2.1.42_Far3_x64.7z
https://yadi.sk/d/VqL1Hv-whNgPV - FarNetBox-2.1.42_Far3_x86.7z
SHA-256: 2c0564ac9ce6b26be23f8114178b7f133b5a9c45e8038396653a8bb5ba01172d *FarNetBox-2.1.42_Far3_x86.7z
Соответствующий баг на мантисе
На некоторых (всех?) хостингах если в корневом каталоге есть симлинк, то при попытке сменить каталог (на любой) пользователь оказывается на локальной файловой панели.
Важная особенность, каталог с симлинком должен быть корневым. Если netbox не может получит информацию о том, куда ссылается симлинк, происходит описанное в инциденте.
Проблема начинается тут: если LinkFileName пустой, то здесь возвращается ошибка и тут соединение закрывается.
Простой способ исправления: проверка LinkFileName на пустоту перед вызовом FileSystem->ReadFile. Может быть ещё более правильно устанавливать признак того, что плагин не смог прочитать куда указывает симлинк.
Более сложный вариант: флаг для FileSystem->ReadFile указывающий, что не надо закрывать соединение при ошибке.