diff options
author | David Robillard <d@drobilla.net> | 2016-03-15 23:37:09 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2018-05-27 18:18:30 +0200 |
commit | 88ea0c449a8daa8951eca0ae69fd376f86122982 (patch) | |
tree | cf95d8fc4f7249498246aa815002ea0293cad713 /src/string.c | |
parent | 9b3d8263604ba11ae008c8651a1fe2063296d6b1 (diff) | |
download | serd-88ea0c449a8daa8951eca0ae69fd376f86122982.tar.gz serd-88ea0c449a8daa8951eca0ae69fd376f86122982.tar.bz2 serd-88ea0c449a8daa8951eca0ae69fd376f86122982.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 dedd0713..ee2ac290 100644 --- a/src/string.c +++ b/src/string.c @@ -51,47 +51,32 @@ 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); } SERD_API 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 |