diff options
author | David Robillard <d@drobilla.net> | 2016-03-15 23:37:09 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2019-04-13 19:15:32 +0200 |
commit | 2a480d8cc56fe4d29fba2759b62d9f09fc0cc87e (patch) | |
tree | 3a8e1574df9fd422e3f9118dffd00efdfd3a9ee8 /src/string.c | |
parent | a549e968cd3f840dc98b2e199c5f52e9f5a5780c (diff) | |
download | serd-2a480d8cc56fe4d29fba2759b62d9f09fc0cc87e.tar.gz serd-2a480d8cc56fe4d29fba2759b62d9f09fc0cc87e.tar.bz2 serd-2a480d8cc56fe4d29fba2759b62d9f09fc0cc87e.zip |
Remove useless character counting
Diffstat (limited to 'src/string.c')
-rw-r--r-- | src/string.c | 45 |
1 files changed, 15 insertions, 30 deletions
diff --git a/src/string.c b/src/string.c index cde82134..024f8bd0 100644 --- a/src/string.c +++ b/src/string.c @@ -56,46 +56,31 @@ serd_update_flags(const uint8_t c, SerdNodeFlags* const flags) size_t serd_substrlen(const uint8_t* const str, const size_t len, - size_t* const n_bytes, SerdNodeFlags* const flags) { - size_t n_chars = 0; - size_t i = 0; - SerdNodeFlags f = 0; - for (; i < len && str[i]; ++i) { - if ((str[i] & 0xC0) != 0x80) { // Start of new character - ++n_chars; - serd_update_flags(str[i], &f); - } - } - if (n_bytes) { - *n_bytes = i; - } if (flags) { - *flags = f; + size_t i = 0; + *flags = 0; + for (; i < len && str[i]; ++i) { + serd_update_flags(str[i], flags); + } + return i; } - return n_chars; + return strlen((const char*)str); } size_t -serd_strlen(const uint8_t* str, size_t* n_bytes, SerdNodeFlags* flags) +serd_strlen(const uint8_t* str, SerdNodeFlags* flags) { - size_t n_chars = 0; - size_t i = 0; - SerdNodeFlags f = 0; - for (; str[i]; ++i) { - if ((str[i] & 0xC0) != 0x80) { // Start of new character - ++n_chars; - serd_update_flags(str[i], &f); - } - } - if (n_bytes) { - *n_bytes = i; - } if (flags) { - *flags = f; + size_t i = 0; + *flags = 0; + for (; str[i]; ++i) { + serd_update_flags(str[i], flags); + } + return i; } - return n_chars; + return strlen((const char*)str); } static inline double |