View Issue Details

IDProjectCategoryView StatusLast Update
0002824Far ManagerPlugins API.Editorpublic2015-01-05 12:31
ReporterMaximusAssigned ToDrKnS 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version3.0 
Target VersionFixed in Version3.0 
Summary0002824: Assertion: list iterator not decrementable
DescriptionВозникает при вызове:
psi.EditorControl(-1, ECTL_DELETESTRING, 0, NULL);
если на строке были букмарки.

build 4127 x86
Steps To Reproduce1. Загрузить EditWrap: http://plugring.farmanager.com/plugin.php?pid=951&l=ru
2. Открыть в редакторе файл с длинными строками
3. Выполнить Toggle Wrap, перейти на "виртуально созданную строку", нажать Ctrl1 (т.е. если первая строка была длинная, то перейти на вторую)
4. Выполнить Toggle Wrap, получить ассерт и крэш.
Additional Information---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Debug Assertion Failed!

Program: ...\unicode_far\Debug.32.vc\Far.exe
File: C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\list
Line: 259

Expression: list iterator not decrementable

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)

---------------------------
Abort Retry Ignore
---------------------------


Стек:
     Far.exe!std::_Debug_message(const wchar_t * message, const wchar_t * file, unsigned int line) Line 15 C++
     Far.exe!std::_List_const_iterator<std::_List_val<std::_List_simple_types<Editor::InternalEditorSessionBookMark> > >::operator--() Line 259 + 0x14 bytes C++
     Far.exe!std::_List_iterator<std::_List_val<std::_List_simple_types<Editor::InternalEditorSessionBookMark> > >::operator--() Line 387 C++
     Far.exe!Editor::MoveSessionBookmarkToUndoList(std::_List_iterator<std::_List_val<std::_List_simple_types<Editor::InternalEditorSessionBookMark> > > sb_move) Line 6583 C++
     Far.exe!Editor::DeleteString(std::_List_iterator<std::_List_val<std::_List_simple_types<Edit> > > DelPtr, int LineNumber, int DeleteLast, int UndoLine) Line 3293 C++
     Far.exe!Editor::EditorControl(int Command, int Param1, void * Param2) Line 5908 C++
     Far.exe!FileEditor::EditorControl(int Command, int Param1, void * Param2) Line 2867 + 0x1e bytes C++
     Far.exe!pluginapi::apiTControl<FileEditor,enum EDITOR_CONTROL_COMMANDS,FileEditor * (__thiscall Manager::*)(void)const ,int (__thiscall FileEditor::*)(int,int,void *)>(int Id, EDITOR_CONTROL_COMMANDS Command, int Param1, void * Param2, FileEditor * (void)* Getter, int (int, int, void *)* Control) Line 1970 + 0x1d bytes C++
     Far.exe!pluginapi::apiEditorControl(int EditorID, EDITOR_CONTROL_COMMANDS Command, int Param1, void * Param2) Line 2004 + 0x30 bytes C++
TagsNo tags attached.
Build4128

Activities

DrKnS

2014-10-08 10:53

administrator   bugnote:0013068

4128.

Только Ctrl1 - это не те букмарки.

Кстати, плагин возвращает -1 из OpenW, что неправильно и приводит к утечке.

Issue History

Date Modified Username Field Change
2014-10-08 04:11 Maximus New Issue
2014-10-08 10:47 DrKnS Assigned To => DrKnS
2014-10-08 10:47 DrKnS Status new => assigned
2014-10-08 10:53 DrKnS Note Added: 0013068
2014-10-08 10:53 DrKnS Status assigned => feedback
2015-01-05 12:31 DrKnS Build => 4128
2015-01-05 12:31 DrKnS Status feedback => closed
2015-01-05 12:31 DrKnS Resolution open => fixed
2015-01-05 12:31 DrKnS Fixed in Version => 3.0