commit c73600a0da993b4675a6e6c7357546d5de22b4d1
parent 7184f7fe78ea7957f0582c797c33bd5cf3914dd7
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date: Sun, 29 Mar 2026 03:55:46 +0530
Revert "Arbitrate fuzzy score matches with name comparison"
This reverts commit 353c1a7d5e1b22ef8c7b661119f4d6180c902602.
Diffstat:
| M | src/nnn.c | | | 41 | ++++++++++++++++++++--------------------- |
1 file changed, 20 insertions(+), 21 deletions(-)
diff --git a/src/nnn.c b/src/nnn.c
@@ -3338,7 +3338,7 @@ static int fuzzyentrycmp(const void *va, const void *vb)
if (sa != sb)
return cfg.reverse ? (sa < sb ? 1 : -1) : (sa < sb ? -1 : 1);
- return cfg.reverse ? -namecmpfn(pa->name, pb->name) : namecmpfn(pa->name, pb->name);
+ return entrycmpfn(va, vb);
}
static void clearfilter(void)
@@ -3629,38 +3629,37 @@ static int fill(const char *fltr, regex_t *re)
static int matches(const char *fltr)
{
- if (cfg.fuzzy && fltr[0]) {
- fuzzy_sort_fltr = fltr;
- ENTSORT(pdents, ndents, fuzzyentrycmp);
- fuzzy_sort_fltr = NULL;
- return ndents;
- }
-
- if (cfg.regex) {
#ifdef PCRE2
- pcre2_code *pcre2x = NULL;
+ pcre2_code *pcre2x = NULL;
- /* Search filter */
- if (setfilter(&pcre2x, fltr))
- return -1;
+ /* Search filter */
+ if (cfg.regex && setfilter(&pcre2x, fltr))
+ return -1;
- ndents = fill(fltr, pcre2x);
+ ndents = fill(fltr, pcre2x);
+ if (cfg.regex)
pcre2_code_free(pcre2x);
#else
- regex_t re;
+ regex_t re;
- /* Search filter */
- if (setfilter(&re, fltr))
- return -1;
+ /* Search filter */
+ if (cfg.regex && setfilter(&re, fltr))
+ return -1;
- ndents = fill(fltr, &re);
+ ndents = fill(fltr, &re);
+ if (cfg.regex)
regfree(&re);
#endif
- }
- ENTSORT(pdents, ndents, entrycmpfn);
+ if (cfg.fuzzy && fltr[0]) {
+ fuzzy_sort_fltr = fltr;
+ ENTSORT(pdents, ndents, fuzzyentrycmp);
+ fuzzy_sort_fltr = NULL;
+ } else
+ ENTSORT(pdents, ndents, entrycmpfn);
+
return ndents;
}