michaellukashov / Far-NetBox

SFTP/SCP/FTP/FTPS/WebDAV/S3 client for Far Manager 3 (http://farmanager.com/)
https://forum.farmanager.com/viewtopic.php?t=6317
GNU General Public License v2.0
161 stars 52 forks source link

fix crash in SetDirectory after 'lost connection' #91

Closed ctapmex closed 10 years ago

ctapmex commented 10 years ago

Если происходит ошибка типа 'lost connection' в момент смены директории , плагин падает. причина - в HandleFileSystemException происходит закрытие панели, и дальнейшая работа с ней невозможна.

ctapmex commented 10 years ago

как воспроизвести ошибку

  1. ставим ftp-сервер. например filezilla
  2. устанавливаем "connection timeout" в 5 секунд
  3. подключаемся через netbox к серверу. по системному времени через 5 секунд пытаемся зайти в директорию. при должной сноровке удается сделать ошибку сразу -) . падаем... при применении патча - не падаем.
VictorVG commented 10 years ago

Получил такое на FreeBSD.org пока подымал отказавший DEC AlphaServer 2100 под OSF/1 (ну, тому лет уже порядком - с 94-го работал 7/24 без единой ошибки, так что это нормально - время и полетел DEC RZ26 (древний SCSI Maxtor на 2 Гб) под слайсом подкачки) стоял на симлинке на порты, пришёл, вижу далог реконнекта по таймауту, жму Ok! и получаю сообщение о сбое:

"Исключительная ситуация

Исключение: Нарушение доступа (запись в 0x00000012) Адрес: 0x777577A2 Функция: SetDirectoryW Модуль: NetBox.dll"

после повторить не пытался - работы хватило, но что происходит зафиксировал. Сейчас пересоберу в VC++ 2010 с всеми патчами и вылоложу у себя на облака. Этот должен и будет и на ХР работать.

VictorVG commented 10 years ago

NetBox х86 и х64 v2.1.33 Fix-bug №90, №91, №92 на облаках:

http://yadi.sk/d/QqWJhEEQFziPS - FarNetBox-2.1.33_Far3_x86.7z http://yadi.sk/d/WltHmg4QFziPE - FarNetBox-2.1.33_Far3_x64.7z

архивы 7-Zip v9.30 Alpha, LZMA, SOLID, MAXIMUM

Сборка в VC++ 2010, минимально требуется WinXP SP3 и Far3 b3331!

michaellukashov commented 10 years ago

Thanks, applied