From 4be2c0b3fca96d97ba88b7d6749bde6b3d618299 Mon Sep 17 00:00:00 2001 From: Hugues Delorme Date: Mon, 2 Nov 2015 10:45:55 +0100 Subject: [PATCH] gmio_core/internal: micro-optimizations in gmio_ascii_stricmp() --- src/gmio_core/internal/string_utils.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/gmio_core/internal/string_utils.h b/src/gmio_core/internal/string_utils.h index 8b67593..d7301db 100644 --- a/src/gmio_core/internal/string_utils.h +++ b/src/gmio_core/internal/string_utils.h @@ -161,13 +161,11 @@ gmio_bool_t gmio_ascii_char_iequals(char c1, char c2) int gmio_ascii_stricmp(const char* str1, const char* str2) { - while (*str1 != 0 && *str2 != 0) { - if (!gmio_ascii_char_iequals(*str1, *str2)) - return 1; + while (*str1 != 0 && gmio_ascii_char_iequals(*str1, *str2)) { ++str1; ++str2; } - return *str1 == 0 && *str2 == 0 ? 0 : 1; + return *str1 - *str2; } gmio_bool_t gmio_ascii_istarts_with(const char* str, const char* begin)