LuaMacro — падение при сочетании факторов

Здесь можно сообщить о найденных багах в Far.
ccaid
Posts: 804
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 9 times
Been thanked: 5 times

LuaMacro — падение при сочетании факторов

Post by ccaid » Fri 09 Jun, 2017 14:32

Latest post of the previous page:

новый комплект факторов
Win 10 x64
Far Manager v3.0 build 4972 x64
MoreHistory — История папок и плагинов
Калькулятор
из плагинов достаточно LuaMacro
вызываем Калькулятор, вводим log10(0)
Far молча схлопывается
Фар делают добрые люди

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Fri 09 Jun, 2017 15:56

ccaid, даже не надо калькулятора, достаточно с комстроки исполнить lua:math.log10(0).
Честно говоря, на данный момент у меня нет решения.
_control87(_MCW_EM,_MCW_EM) почему-то в этом случае не защищает.

Добавлено:
Можете поместить на баг-трекер.
Last edited by Shmuel on Fri 09 Jun, 2017 16:18, edited 1 time in total.

ccaid
Posts: 804
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 9 times
Been thanked: 5 times

LuaMacro — падение при сочетании факторов

Post by ccaid » Fri 09 Jun, 2017 19:00

Фар делают добрые люди

ccaid
Posts: 804
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 9 times
Been thanked: 5 times

LuaMacro — падение при сочетании факторов

Post by ccaid » Wed 21 Jun, 2017 07:43

и ещё
Windows 10 x64, Windows 7 x64
Far30b4973.x86.20170613.7z
EdtFind
IncSearch


с некоторой вероятностью при выходе из Far (по F10) происходит падение с выводом сообщения об ошибке в окно консоли, типа:


Far30b4973.x64.20170613.7z
на платформе x64 тоже самое, только выхлоп побогаче:


для падения обычно достаточно после запуска Far сразу нажать F10 Enter, но процесс вероятностный, иногда нужно повторить попытку или походить по папкам перед выходом
обнаружено и ректифицировано было под Win10, под Win7 с лёгкостью повторилось
Фар делают добрые люди

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 08:01

ccaid, я конечно попробую это поправить, хотя полной уверенности нет, что получится. Если не получится - то рекомендация будет такая: либо оставлять LuaMacro (и прочие LuaFAR-плагины), либо EdtFind (и прочие Pascal-плагины).
Паскалевские плагины включают разрешение исключений плавающей точки для всего процесса Far, то есть ведут себя так, как будто кроме них больше ничего нет.

2useven10
Posts: 2955
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 77 times

LuaMacro — падение при сочетании факторов

Post by 2useven10 » Wed 21 Jun, 2017 09:14

Когда исключение возникает при вычислении логарифма от 0 - это понятно.
А здесь откуда?

User avatar
DrKnS
Posts: 4535
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 113 times
Contact:

LuaMacro — падение при сочетании факторов

Post by DrKnS » Wed 21 Jun, 2017 11:26

ccaid wrote:
Wed 21 Jun, 2017 07:43
Editor.SetTitle("")
Хочу напомнить, что ExitFAR - это, в общем случае, "деструктор", вызываемый или когда плагин уже всё, или когда весь фар уже всё.
Там можно освобождать память, закрывать файлы и т. п., но вызывать API крайне не рекомендуется.

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 12:36

DrKnS прав: при перезагрузке макросов LuaMacro также вызывает событие ExitFAR, но падения не происходит (по крайней мере мне не удалось его вызвать перезагрузкой макросов).
Поэтому рекомендация простая: не вызывайте Far и Macro API в обработчике ExitFAR.

ccaid
Posts: 804
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 9 times
Been thanked: 5 times

LuaMacro — падение при сочетании факторов

Post by ccaid » Wed 21 Jun, 2017 14:53

Shmuel wrote:
Wed 21 Jun, 2017 12:36
при перезагрузке макросов LuaMacro также вызывает событие ExitFAR
именно это мне и нужно. разведите эти события или научите как их развести внутри обработчика.
Фар делают добрые люди

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 15:33

Сделаю, поместите виш на мантис.

2useven10
Posts: 2955
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 77 times

LuaMacro — падение при сочетании факторов

Post by 2useven10 » Wed 21 Jun, 2017 15:38

ccaid, Когда-то давно я немного поправил фар в своей локальной копии, чтобы работало сохранение
состояния панелей при выходе (и восстановление при старте). Насколько помню - просто luamacro выгружается последним.
Эти изменения у меня жить не мешают, можете попробовать ваш макрос на этой версии.
Attachments
Far.exe.7z
(1.3 MiB) Downloaded 5 times

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 15:45

2useven10, LuaMacro уже 4 года как выгружается последним (начиная от билда 3335).

2useven10
Posts: 2955
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 77 times

LuaMacro — падение при сочетании факторов

Post by 2useven10 » Wed 21 Jun, 2017 15:59

Shmuel, давно было - помню плохо. собственно вот все изменения (для транка):
Attachments
ExitFar.diff.7z
(1.22 KiB) Downloaded 5 times
Last edited by 2useven10 on Wed 21 Jun, 2017 16:00, edited 1 time in total.

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 16:13

2useven10, если изменения стоящие, что вам мешает их закоммитить? Если не уверены - можно открыть тему для обсуждения.
Конкретно мне - затруднительно сделать вывод по вашим диффам (много времени займёт).

2useven10
Posts: 2955
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 77 times

LuaMacro — падение при сочетании факторов

Post by 2useven10 » Wed 21 Jun, 2017 16:26

Изменения остались в статусе временных, потому как ожидалось, что будет сертифицированный фикс.

2useven10
Posts: 2955
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 77 times

LuaMacro — падение при сочетании факторов

Post by 2useven10 » Wed 21 Jun, 2017 16:44

У меня (с изменениями) макрос ccid падения не вызывает.
Уверен или нет - уже не помню, но я сними живу больше 3-х лет без проблем.
И да (напрягая память) целью изменений было вызвать lua ExitFARW пока все живы.

Shmuel
Posts: 5041
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 133 times

LuaMacro — падение при сочетании факторов

Post by Shmuel » Wed 21 Jun, 2017 17:39

2useven10, ваш изменённый Фар у меня тоже не падает в данном эксперименте.

Post Reply

Return to “Глюки и баги”

Who is online

Users browsing this forum: No registered users and 3 guests