Make search() return the number of matches

This commit is contained in:
Přemysl Eric Janouch 2021-07-17 07:54:03 +02:00
parent 2238db5a4e
commit 0adbac2066
Signed by: p
GPG Key ID: A0420B94F92B9493
1 changed files with 4 additions and 2 deletions

View File

@ -989,17 +989,19 @@ fun show_help () {
fclose (contents);
}
fun search (const wstring &needle) {
int best = g.cursor, best_n = 0;
fun search (const wstring &needle) -> int {
int best = g.cursor, best_n = 0, matches = 0;
for (int i = 0; i < int (g.entries.size ()); i++) {
auto o = (i + g.cursor) % g.entries.size ();
int n = prefix_length (to_wide (g.entries[o].filename), needle);
matches += n == needle.size ();
if (n > best_n) {
best = o;
best_n = n;
}
}
g.cursor = best;
return matches;
}
fun fix_cursor_and_offset () {