View Issue Details

IDProjectCategoryView StatusLast Update
0000981Far Manager 1.7xMacropublic2011-02-05 20:15
Reportermax rusov Assigned Tovskirdin  
PrioritynormalSeveritycrashReproducibilityrandom
Status closedResolutionfixed 
Product Version1.75 
Fixed in Version1.75 
Summary0000981: Far падает, после вызова плагина через CallPlugin
DescriptionПрикладываю Trap-лог и плагин, на котором проявляется ошибка.

Как воспроизвести ошибку:
1. Установить плагин PanelTabs
   - Настроить его, введя в реестр SetupAnsi.reg
   - Чтобы появилась строка табов - уменьшить высоту панелей (Ctrl-Up)
   - Добавить несколько табов, нажимая на вкладку [+]

2. Кликнуть правой кнопкой мыши на закладку или складку [+] - появится диалог.
3. Кликнуть правой кнопкой мыши за пределами диалога - обычно при этом FAR трапается

У меня ошибка воспроизводится ~50% случаев, от наличия других плагинов не зависит.

Возможно, ошибка не имеет отношения к макросам и относится к другой категории, но это надо разбираться.
TagsNo tags attached.
Build2602

Relationships

related to 0001280 closedvskirdin Far Manager Не работает автодополнение в диалогах плагинов, если они вызываются через CallPlugin 

Activities

max rusov

2009-07-25 20:52

reporter  

PanelTabs.rar (43,470 bytes)

vskirdin

2009-07-27 09:27

administrator   bugnote:0003794

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

max rusov

2009-07-27 15:29

reporter   bugnote:0003796

Принцип такой: вспомогательный поток следит за мышью, и когда обнаруживает, что она нажата постит (WriteConsoleInput) нажатие клавиши (F24). На этой клавише сидит макрос, который вызывает плагин уже в главном потоке Far.
По шагам, последовательность событий должна быть такой:
1. Нажимается кнопка мыши (правая)
2. Приходит нажатие F24, запускается макрос, который вызывает плагин через CallPlugin
3. Плагин ждет отпускания мыши, потом показывает диалог.
4. Диалог закрывается, OpenPlugin завершается с кодом -1.
5. Far валится.
Т.е. Far валится, когда плагин уже отработал. Как будто внутри него что-то разрушено...

vskirdin

2009-07-28 08:28

administrator   bugnote:0003801

смотрим на build 2602
(в двойке build 1057)

...в процессе работы внутренних функций макросы отключаются...

max rusov

2009-07-29 17:33

reporter   bugnote:0003813

Потестировал, вроде все Ok. Можно закрывать.
Спасибо.

DrKnS

2010-02-27 12:18

administrator   bugnote:0005015

После этого патча погнулась перерисовка в макросах:

http://forum.farmanager.com/viewtopic.php?t=5113

vskirdin

2010-02-27 20:46

administrator   bugnote:0005017

таки да, есть такое.
Изменение InternalInput нужно только для callplugin
поправлю.

vskirdin

2010-03-01 16:02

administrator   bugnote:0005032

см. build 1429

vskirdin

2010-03-16 07:36

administrator   bugnote:0005062

алё, гараж.
есть кто живой?

Issue History

Date Modified Username Field Change
2009-07-25 20:52 max rusov New Issue
2009-07-25 20:52 max rusov File Added: PanelTabs.rar
2009-07-27 09:27 vskirdin Note Added: 0003794
2009-07-27 15:29 max rusov Note Added: 0003796
2009-07-28 08:25 vskirdin Status new => assigned
2009-07-28 08:25 vskirdin Assigned To => vskirdin
2009-07-28 08:28 vskirdin Note Added: 0003801
2009-07-28 08:28 vskirdin Status assigned => feedback
2009-07-29 17:33 max rusov Note Added: 0003813
2009-07-29 17:56 vskirdin Build => 2602
2009-07-29 17:56 vskirdin Status feedback => closed
2009-07-29 17:56 vskirdin Resolution open => fixed
2009-07-29 17:56 vskirdin Fixed in Version => 1.75
2010-02-27 12:18 DrKnS Note Added: 0005015
2010-02-27 12:18 DrKnS Status closed => new
2010-02-27 12:18 DrKnS Resolution fixed => reopened
2010-02-27 12:18 DrKnS Status new => assigned
2010-02-27 20:46 vskirdin Note Added: 0005017
2010-03-01 16:02 vskirdin Note Added: 0005032
2010-03-01 16:02 vskirdin Status assigned => feedback
2010-03-16 07:36 vskirdin Note Added: 0005062
2010-03-18 09:37 vskirdin Relationship added related to 0001280
2011-02-05 20:15 alexy Status feedback => closed
2011-02-05 20:15 alexy Resolution reopened => fixed