diff --git a/far/changelog b/far/changelog index d7e73beb24..76aed6a601 100644 --- a/far/changelog +++ b/far/changelog @@ -1,4 +1,9 @@ -drkns 05.04.2016 21:49:33 +0200 - build 4611 +w17 06.04.2016 13:29:38 +0300 - build 4612 + +1. M#3200: Неоднообразное поведение по Ctrl+F на "нормальной папке" и на ".." + [R]Ctrl+[[R]Alt+]F; на ".." теперь не добавляют завершающий '\' + +drkns 05.04.2016 21:49:33 +0200 - build 4611 1. При определённых условиях поиск в панели плагина приводил к падению. diff --git a/far/filelist.cpp b/far/filelist.cpp index 6aa0f5f826..8800d094d9 100644 --- a/far/filelist.cpp +++ b/far/filelist.cpp @@ -1435,7 +1435,7 @@ int FileList::ProcessKey(const Manager::Key& Key) } else { - int CurrentPath=FALSE; + bool add_slash = false; assert(m_CurFile < static_cast(m_ListData.size())); CurPtr = &m_ListData[m_CurFile]; @@ -1451,10 +1451,10 @@ int FileList::ProcessKey(const Manager::Key& Key) else strFileName.resize(1); // "." - if (!(LocalKey==KEY_CTRLALTF || LocalKey==KEY_RCTRLRALTF || LocalKey==KEY_CTRLRALTF || LocalKey==KEY_RCTRLALTF)) - LocalKey=KEY_CTRLF; + add_slash = (LocalKey & 0xFFFF) != (KEY_CTRLF & 0xFFFF); - CurrentPath=TRUE; + if (!(LocalKey==KEY_CTRLALTF || LocalKey==KEY_RCTRLRALTF || LocalKey==KEY_CTRLRALTF || LocalKey==KEY_RCTRLALTF)) + LocalKey = KEY_CTRLF; } if (LocalKey==KEY_CTRLF || LocalKey==KEY_RCTRLF || LocalKey==KEY_CTRLALTF || LocalKey==KEY_RCTRLRALTF || LocalKey==KEY_CTRLRALTF || LocalKey==KEY_RCTRLALTF) @@ -1493,7 +1493,7 @@ int FileList::ProcessKey(const Manager::Key& Key) } } - if (CurrentPath) + if (add_slash) AddEndSlash(strFileName); // добавим первый префикс! diff --git a/far/vbuild.m4 b/far/vbuild.m4 index 1b7f07531c..b930c8be9f 100644 --- a/far/vbuild.m4 +++ b/far/vbuild.m4 @@ -1 +1 @@ -m4_define(BUILD,4611)m4_dnl +m4_define(BUILD,4612)m4_dnl