Repository :
https://github.com/FarGroup/FarManager
On branch : master
Link :
https://github.com/FarGroup/FarManager/commit/3fd08dc641ab6c81a4f4c3408d61951faebebef4
>---------------------------------------------------------------
commit 3fd08dc641ab6c81a4f4c3408d61951faebebef4
Author: w17 <
vladimir....@gmail.com>
Date: Mon Nov 10 22:39:03 2025 +0300
Correction of 6592
>---------------------------------------------------------------
3fd08dc641ab6c81a4f4c3408d61951faebebef4
far/RegExp.cpp | 16 +++++++---------
far/changelog | 11 ++++++++---
far/vbuild.m4 | 2 +-
3 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/far/RegExp.cpp b/far/RegExp.cpp
index 7752d0268..b5c5629f3 100644
--- a/far/RegExp.cpp
+++ b/far/RegExp.cpp
@@ -344,10 +344,10 @@ enum REOp
opAlternative, // |
- opBackRef, // \number \-number {number|-number|name} \g{number|-number|name} \p{number|-number|name}
+ opBackRef, // \number \-number \g{number|-number|name} \p{number|-number|name}
//opNamedBracket, // (?{name}
- //opNamedBackRef, // \p{name} \g{name} \{name} -- resolved as opBackRef
+ //opNamedBackRef, // \p{name} \g{name} -- resolved as opBackRef
opRangesBegin, // for op type check
@@ -556,10 +556,8 @@ static string_view get_NamedGroup(string_view src, int& pos, const int shift)
return src.substr(b_pos, e_pos - b_pos);
}
-// \num \{num} \-num \{-num} \{num} \{-num} \{name}
-// ^ ^ ^ ^ ^ ^ ^
-// \pnum \p{num} \p-num \p{-num} \p{name} \gnum ... \g{name}
-// ^ ^ ^ ^ ^ ^ ^
+// \num \-num \pnum \p{num} \p-num \p{-num} \p{name} \gnum ... \g{name}
+// ^ ^ ^ ^ ^ ^ ^ ^ ^
static string_view get_BackRef(string_view src, int& pos, const int shift)
{
auto c = src[pos];
@@ -668,10 +666,10 @@ int RegExp::CalcLength(string_view src, const int shift)
continue;
}
- // \n \-n \{n} \{-n} \{name}
+ // \n \-n
// \pn \p-n \p{n} \p{-n} \p{name}
// \gn \g-n \g{n} \g{-n} \g{name}
- if (c && wcschr(L"pg{-", c) || ISDIGIT(c))
+ if (c && wcschr(L"pg-", c) || ISDIGIT(c))
{
back_ref(i);
}
@@ -1073,7 +1071,7 @@ void RegExp::InnerCompile(const wchar_t* src, const int srclength, const int shi
default:
{
- if (c && wcschr(L"pg{-", c) || ISDIGIT(c)) // \n \-n \{n} \{-n} \p{n} \p{-n} \p{name} \g{n} \g{-n} \g{name}
+ if (c && wcschr(L"pg-", c) || ISDIGIT(c)) // \n \-n \p{n} \p{-n} \p{name} \g{n} \g{-n} \g{name}
{
const auto bref = back_ref(i);
const auto b_pos = static_cast<int>(bref.data() - src);
diff --git a/far/changelog b/far/changelog
index 4610858ae..2dc4ba0ec 100644
--- a/far/changelog
+++ b/far/changelog
@@ -1,3 +1,8 @@
+--------------------------------------------------------------------------------
+w17 2025-11-10 22:37:26+03:00 - build 6594
+
+1. Correction of 6592
+
--------------------------------------------------------------------------------
drkns 2025-11-10 18:14:47+00:00 - build 6593
@@ -6,17 +11,17 @@ drkns 2025-11-10 18:14:47+00:00 - build 6593
2. Correction of 6588.
--------------------------------------------------------------------------------
-w17 2025-10-04 05:04:24+03:00 - build 6592
+w17 2025-11-10 05:04:24+03:00 - build 6592
1. ReRevert 6590 (fixed)
--------------------------------------------------------------------------------
-w17 2025-10-04 02:31:43+03:00 - build 6591
+w17 2025-11-10 02:31:43+03:00 - build 6591
1. Revert 6590 (not ready)
--------------------------------------------------------------------------------
-w17 2025-10-04 00:59:47+03:00 - build 6590
+w17 2025-11-10 00:59:47+03:00 - build 6590
1. RegExp: (?<name>... added, (?{name}... still works. Name starts with LETTER.
diff --git a/far/vbuild.m4 b/far/vbuild.m4
index 51c414813..c1ef13c66 100644
--- a/far/vbuild.m4
+++ b/far/vbuild.m4
@@ -1 +1 @@
-6593
+6594