View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000841 | Far Manager 1.7x | Macro | public | 2009-04-25 12:51 | 2009-04-29 14:40 |
Reporter | JohnDoe | Assigned To | vskirdin | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Fixed in Version | 1.75 | ||||
Summary | 0000841: Мусор в msgbox при неуказании опциональных параметров | ||||
Description | Один из случаев удалось отловить: Если прервать макрос с помощью CtrlBreak то следующий вызов msgbox() вместо пустого диалога покажет мусор. Пример: msgbox() "Press CtrlBreak" $Rep(100) . sleep(100) $End CtrlY Повторный запуск после прерывания покажет "1" | ||||
Additional Information | Помнится и поинтереснее чем "1" мусор попадался, и при неуказанном втором параметре... Но повторить пока не могу | ||||
Tags | No tags attached. | ||||
Build | 2568 | ||||
|
Я долго пытался понять кто такой Майкоп (Мусор) :) |
|
Так... здесь есть одна потеха :-) Потеха под названием "Стек". Собственно именно этот баг правится просто - достаточно в macro.cpp в KeyMacro::GetKey() в блоке с комментарием "Mantis#0000581" перед "goto done;" добавить "VMStack.Pop();". Вроде как есть мысль, что стек нужно уравновесить - т.е. перед началом исполнения макроса получить его размер, а в конце - лишнее удалить. Вот только когда этот "конец" наступает? Макросы то у нас могут идти "подряд" (напихали, например, плагином). Здесь под "подряд" подразумевается так же вызовы "фунуций" (через eval). "Конец" это когда текущая макропоследовательность отработала или когда больше нихрена нет? Если первое, то результат eval`а мы можем не узнать.... (хотя может я загоняюсь :-)) |
|
1.75 = build 2568 2.00 = build 888 |
Date Modified | Username | Field | Change |
---|---|---|---|
2009-04-25 12:51 | JohnDoe | New Issue | |
2009-04-25 12:53 | alexy | Note Added: 0003029 | |
2009-04-25 15:03 | vskirdin | Status | new => assigned |
2009-04-25 15:03 | vskirdin | Assigned To | => vskirdin |
2009-04-27 18:57 | vskirdin | Note Added: 0003044 | |
2009-04-29 10:27 | vskirdin | Note Added: 0003064 | |
2009-04-29 10:27 | vskirdin | Status | assigned => feedback |
2009-04-29 10:44 | JohnDoe | Status | feedback => resolved |
2009-04-29 10:44 | JohnDoe | Resolution | open => fixed |
2009-04-29 14:40 | vskirdin | Build | => 2568 |
2009-04-29 14:40 | vskirdin | Status | resolved => closed |
2009-04-29 14:40 | vskirdin | Fixed in Version | => 1.75 |