Far крашится при использовании плагина 7-ZIP
Far крашится при использовании плагина 7-ZIP
С какой версии началось - не знаю. Проверял в версиях - FAR3 4545, 5200, 5210, 5213, 5223.
Проявляется так:
В Far установлен плагин 7-Zip (проверял на версиях 1801, 1805)
Если при просмотре архива (пробовал на rar и 7z) с помощью плагина 7-Zip (F11 на архиве) нажать ESC до того, как весь архив прочитался и открылся на панели, то Far "падает". Архив нужен большой (более 1 Гб), чтобы он открывался какое то время, чтобы успеть нажать клавишу ESC.
Проявляется так:
В Far установлен плагин 7-Zip (проверял на версиях 1801, 1805)
Если при просмотре архива (пробовал на rar и 7z) с помощью плагина 7-Zip (F11 на архиве) нажать ESC до того, как весь архив прочитался и открылся на панели, то Far "падает". Архив нужен большой (более 1 Гб), чтобы он открывался какое то время, чтобы успеть нажать клавишу ESC.
Far крашится при использовании плагина 7-ZIP
При нажатии на "минидамп" во время краха ничего не происходит. Или может этот файл минидампа можно где-то найти?
Прицепил скрины - кроме "завершить" и "стек" больше никакие кнопки не реагируют
Прицепил скрины - кроме "завершить" и "стек" больше никакие кнопки не реагируют
Far крашится при использовании плагина 7-ZIP
Какого размера файлы сюда можно загружать? Минидамп - 73 мега, в архиве - 17
Far крашится при использовании плагина 7-ZIP
Здесь минидамп: my - files . ru / oes8wz (лишние пробелы убрать)
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Far крашится при использовании плагина 7-ZIP
Выглядит так:
1. В плагине происходит исключение, он его обрабатывает и пытается показать сообщение "Error GetOpenPluginInfo".
2. фар показывает сообщение, попутно перерисовывая все остальные окна.
3. среди "всех остальных окон" внезапно оказывается файловая панель, которая в этот момент считается уже принадлежащей плагину.
4. Фар хочет показать в заголовке текущий плагиновый каталог и для этого вызывает у плагина GetOpenPluginInfo.
6. goto 1.
... EXCEPTION_STACK_OVERFLOW.
Появилось, скорее всего, после того, как переключение окон стало приводить к настоящим перерисовкам вместо Save/RestoreScreen или что там было раньше.
1. В плагине происходит исключение, он его обрабатывает и пытается показать сообщение "Error GetOpenPluginInfo".
2. фар показывает сообщение, попутно перерисовывая все остальные окна.
3. среди "всех остальных окон" внезапно оказывается файловая панель, которая в этот момент считается уже принадлежащей плагину.
4. Фар хочет показать в заголовке текущий плагиновый каталог и для этого вызывает у плагина GetOpenPluginInfo.
6. goto 1.
... EXCEPTION_STACK_OVERFLOW.
Появилось, скорее всего, после того, как переключение окон стало приводить к настоящим перерисовкам вместо Save/RestoreScreen или что там было раньше.
Far крашится при использовании плагина 7-ZIP
Да, 7z.dll правильный. Что интересно, если сделать плагин 7-Zip используемым по умолчанию и открывать архив не по F11, а по Enter, то краха не происходит
Far крашится при использовании плагина 7-ZIP
А можно это как то исправить? Например, в версии FAR3-3525 (7-ZIP 18.05) этого бага нет.
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Far крашится при использовании плагина 7-ZIP
Мы тут посмотрели, переполнение стека из-за перерисовок - это уже последствия (хотя их бы тоже надо поправить).
Первопричина в том, что плагин возвращает из OpenPlugin()
-2
, видимо, подразумевая этим "операция прервана пользователем".Однако, код -2 в OpenPlugin (в отличие от OpenFilePlugin) никогда не поддерживался и отдельно не обрабатывался.
Far считает это нормальным хендлом панели и потом отдает его плагину обратно, чего тот не ожидает.
То, что в районе 3525 это срабатывало, было ошибкой (внесённой, вроде бы, в 3073).
В Far, конечно, можно добавить костыль, но, учитывая то, что баг проявляется даже в 1.7 - лучше попросить Игоря Павлова исправить как надо.
Far крашится при использовании плагина 7-ZIP
А Вы могли бы все это объяснить Игорю Павлову и попросить его исправить этот баг, если возможно.
Я вряд ли смогу объяснить это корректно и понятно.
Буду очень благодарен
- HaRT
- Moderator
- Posts: 10823
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Far крашится при использовании плагина 7-ZIP
А вы просто пришлите ему ссылку на это обсуждение — он сам при желании всё нужное тут почерпнёт.
Фар есть инструмент, а не нянька. © 2009 DrKnS