1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-09-22 19:45:54 -04:00

fix #1761 by changing the implementation from recursive

... to an iterative approach

Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
This commit is contained in:
Steffen Jaeckel 2023-03-10 14:52:54 +01:00
parent 2925e85cd6
commit 7167760bdd

View File

@ -355,6 +355,7 @@ prof_occurrences(const char* const needle, const char* const haystack, int offse
return *result;
}
do {
gchar* haystack_curr = g_utf8_offset_to_pointer(haystack, offset);
if (g_str_has_prefix(haystack_curr, needle)) {
if (whole_word) {
@ -379,9 +380,7 @@ prof_occurrences(const char* const needle, const char* const haystack, int offse
}
offset++;
if (g_strcmp0(g_utf8_offset_to_pointer(haystack, offset), "\0") != 0) {
*result = prof_occurrences(needle, haystack, offset, whole_word, result);
}
} while (g_strcmp0(g_utf8_offset_to_pointer(haystack, offset), "\0") != 0);
return *result;
}