Page 1 of 2

Far крашится при использовании плагина 7-ZIP

Posted: Mon 28 May, 2018 10:02
by micro68
С какой версии началось - не знаю. Проверял в версиях - FAR3 4545, 5200, 5210, 5213, 5223.
Проявляется так:
В Far установлен плагин 7-Zip (проверял на версиях 1801, 1805)
Если при просмотре архива (пробовал на rar и 7z) с помощью плагина 7-Zip (F11 на архиве) нажать ESC до того, как весь архив прочитался и открылся на панели, то Far "падает". Архив нужен большой (более 1 Гб), чтобы он открывался какое то время, чтобы успеть нажать клавишу ESC.

Far крашится при использовании плагина 7-ZIP

Posted: Mon 28 May, 2018 21:24
by DrKnS
Не повторяется. Можете записать минидамп?

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 06:13
by micro68
При нажатии на "минидамп" во время краха ничего не происходит. Или может этот файл минидампа можно где-то найти?
Прицепил скрины - кроме "завершить" и "стек" больше никакие кнопки не реагируют

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 06:48
by DrKnS
%FARLOCALPROFILE%\Far.mdmp

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 07:21
by micro68
Какого размера файлы сюда можно загружать? Минидамп - 73 мега, в архиве - 17

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 07:43
by micro68
Здесь минидамп: my - files . ru / oes8wz (лишние пробелы убрать)

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 09:40
by 2useven10
micro68 wrote: Mon 28 May, 2018 10:02 В Far установлен плагин 7-Zip (проверял на версиях 1801, 1805)
правильный 7z.dll при этом в каталоге плагина?

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 09:44
by DrKnS
Выглядит так:
1. В плагине происходит исключение, он его обрабатывает и пытается показать сообщение "Error GetOpenPluginInfo".
2. фар показывает сообщение, попутно перерисовывая все остальные окна.
3. среди "всех остальных окон" внезапно оказывается файловая панель, которая в этот момент считается уже принадлежащей плагину.
4. Фар хочет показать в заголовке текущий плагиновый каталог и для этого вызывает у плагина GetOpenPluginInfo.
6. goto 1.
... EXCEPTION_STACK_OVERFLOW.

Появилось, скорее всего, после того, как переключение окон стало приводить к настоящим перерисовкам вместо Save/RestoreScreen или что там было раньше.

Far крашится при использовании плагина 7-ZIP

Posted: Tue 29 May, 2018 09:48
by micro68
Да, 7z.dll правильный. Что интересно, если сделать плагин 7-Zip используемым по умолчанию и открывать архив не по F11, а по Enter, то краха не происходит

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 06:29
by micro68
DrKnS wrote: Tue 29 May, 2018 09:44 Появилось, скорее всего, после того, как переключение окон стало приводить к настоящим перерисовкам вместо Save/RestoreScreen или что там было раньше.
А можно это как то исправить? Например, в версии FAR3-3525 (7-ZIP 18.05) этого бага нет.

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 10:09
by DrKnS
Можно наверное там как-то определять рекурсию.
@zg , может есть вариант лучше?

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 18:57
by DrKnS
micro68 wrote: Tue 05 Jun, 2018 06:29в версии FAR3-3525 (7-ZIP 18.05) этого бага нет
Мы тут посмотрели, переполнение стека из-за перерисовок - это уже последствия (хотя их бы тоже надо поправить).
Первопричина в том, что плагин возвращает из OpenPlugin() -2, видимо, подразумевая этим "операция прервана пользователем".
Однако, код -2 в OpenPlugin (в отличие от OpenFilePlugin) никогда не поддерживался и отдельно не обрабатывался.
Far считает это нормальным хендлом панели и потом отдает его плагину обратно, чего тот не ожидает.
То, что в районе 3525 это срабатывало, было ошибкой (внесённой, вроде бы, в 3073).

В Far, конечно, можно добавить костыль, но, учитывая то, что баг проявляется даже в 1.7 - лучше попросить Игоря Павлова исправить как надо.

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 19:23
by micro68
DrKnS wrote: Tue 05 Jun, 2018 18:57 лучше попросить Игоря Павлова исправить как надо
А Вы могли бы все это объяснить Игорю Павлову и попросить его исправить этот баг, если возможно.
Я вряд ли смогу объяснить это корректно и понятно.
Буду очень благодарен

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 19:28
by HaRT
micro68 wrote: Tue 05 Jun, 2018 19:23 Я вряд ли смогу объяснить это корректно и понятно.
А вы просто пришлите ему ссылку на это обсуждение — он сам при желании всё нужное тут почерпнёт.

Far крашится при использовании плагина 7-ZIP

Posted: Tue 05 Jun, 2018 19:52
by DrKnS