View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001784 | Far Manager | Plugins API | public | 2011-05-26 13:47 | 2011-06-23 14:26 |
Reporter | Maximus | Assigned To | DrKnS | ||
Priority | normal | Severity | minor | Reproducibility | sometimes |
Status | closed | Resolution | fixed | ||
Product Version | 3.0 | ||||
Fixed in Version | 3.0 | ||||
Summary | 0001784: Глюки с кешем плагинов | ||||
Description | С кешем плагинов все плохо. Из-за чего он разваливается - непонятно. Если надо - могу plugincache.db приложить. Сейчас вот абсолютно непонятный облом произошел, непонятный для пользователя, т.к. никаких ошибок фар вообще не показал! Плагин "грузится из кеша", функция PluginManager::LoadPlugin зовет AddPlugin(pPlugin), которая молча (!) возвращает false, сразу зовется "pPlugin->Unload(true); delete pPlugin;" и на выход. PluginManager::AddPlugin(Plugin *pPlugin) обламывается сразу AncientPlugin** item=new AncientPlugin*(pPlugin); item=PluginsCache->insert(item); if(*item!=pPlugin) return false; // тут она сразу выходит Причем я не понял, а этот item удалять не надо разве? Он так и повиснет в PluginsCache? А ведь для pPlugin будет сразу вызван delete ( | ||||
Tags | No tags attached. | ||||
Build | 2057 | ||||
|
сборка 2051 |
|
а на 2053 с убитым plugincache.db всё двоится :) |
|
2055 |
|
|
|
С кешем все еще плохо. Валится отладочная версия ╔═══════════════════ Exception occurred ═══════════════════╗ ║ Exception: Access violation (read from 0xCCCCCCCC) ║ ║ Address: 0x014222C2 ║ ║ Function: OpenW ║ ║ Module: unicode_far\Debug.32.vc\Plugins\Loader.dll ║ ╟──────────────────────────────────────────────────────────╢ ║ { Unload plugin } [ Debug ] ║ ╚══════════════════════════════════════════════════════════╝ Как добиться. Плагин один единственный, других файлов кроме указанных не требуется \Far.exe \FarEng.lng \Far.exe.ini \Plugins\Loader.dll 1. кеша нет, запускаем фар 2. сразу закрываем (кеш сформировался) 3. запускаем фар 4. F11 (в меню F11 должен быть пункт вроде «Debug.32.vc\Plugins\Loader.dll> Wrapper loading failed x0000007E) Enter все, упали PS. Build 2056. В этой ситуации Loader.dll генерит новый гуид в каждом сеансе. |
|
2057 |
Date Modified | Username | Field | Change |
---|---|---|---|
2011-05-26 13:47 | Maximus | New Issue | |
2011-05-26 13:49 | Maximus | Note Added: 0007066 | |
2011-05-26 14:11 | samlyukov | Note Added: 0007068 | |
2011-05-27 07:16 | DrKnS | Note Added: 0007085 | |
2011-05-27 07:16 | DrKnS | Assigned To | => DrKnS |
2011-05-27 07:16 | DrKnS | Status | new => feedback |
2011-05-27 22:37 | Maximus | File Added: Loader.dll.7z | |
2011-05-27 22:38 | Maximus | Note Added: 0007098 | |
2011-05-27 22:38 | Maximus | Status | feedback => assigned |
2011-05-28 00:25 | alexy | Note Added: 0007100 | |
2011-05-28 00:25 | alexy | Status | assigned => feedback |
2011-06-23 14:26 | DrKnS | Build | => 2057 |
2011-06-23 14:26 | DrKnS | Status | feedback => closed |
2011-06-23 14:26 | DrKnS | Resolution | open => fixed |
2011-06-23 14:26 | DrKnS | Fixed in Version | => 3.0 |