diff options
author | David Robillard <d@drobilla.net> | 2011-05-05 03:31:19 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2011-05-05 03:31:19 +0000 |
commit | 8c7698ce03e89cec0c85245a5d67362744eacdb3 (patch) | |
tree | aeb39a771fb2034da1a34a65697546416a9038c5 | |
parent | 345d1d4b7d726fc63219de124d8a4a13734dc72e (diff) | |
download | serd-8c7698ce03e89cec0c85245a5d67362744eacdb3.tar.gz serd-8c7698ce03e89cec0c85245a5d67362744eacdb3.tar.bz2 serd-8c7698ce03e89cec0c85245a5d67362744eacdb3.zip |
Make serd_read_state_get_base_uri return a pointer.
git-svn-id: http://svn.drobilla.net/serd/trunk@157 490d8e77-9747-427b-9fa3-0b8f29cee8a0
-rw-r--r-- | serd/serd.h | 2 | ||||
-rw-r--r-- | src/reader.c | 4 | ||||
-rw-r--r-- | src/serd_internal.h | 22 |
3 files changed, 15 insertions, 13 deletions
diff --git a/serd/serd.h b/serd/serd.h index 7580207d..3b0fe41a 100644 --- a/serd/serd.h +++ b/serd/serd.h @@ -547,7 +547,7 @@ serd_read_state_expand(SerdReadState* state, Get the current base URI. */ SERD_API -SerdNode +const SerdNode* serd_read_state_get_base_uri(SerdReadState* state, SerdURI* out); diff --git a/src/reader.c b/src/reader.c index 6d9cc599..d6c97eec 100644 --- a/src/reader.c +++ b/src/reader.c @@ -1493,12 +1493,12 @@ serd_read_state_expand(SerdReadState* state, } SERD_API -SerdNode +const SerdNode* serd_read_state_get_base_uri(SerdReadState* state, SerdURI* out) { *out = state->base_uri; - return state->base_uri_node; + return &state->base_uri_node; } SERD_API diff --git a/src/serd_internal.h b/src/serd_internal.h index 83416942..dd57af1e 100644 --- a/src/serd_internal.h +++ b/src/serd_internal.h @@ -98,26 +98,28 @@ is_digit(const uint8_t c) return in_range(c, '0', '9'); } -/** UTF-8 strlen. - * @return Lengh of @a utf8 in characters. - * @param utf8 A null-terminated UTF-8 string. - * @param out_n_bytes (Output) Set to the size of @a utf8 in bytes. - */ +/** + UTF-8 strlen. + @return Length of @c str in characters. + @param str A null-terminated UTF-8 string. + @param n_bytes (Output) Set to the size of @a str in bytes (incl. NULL). +*/ static inline size_t -serd_strlen(const uint8_t* utf8, size_t* out_n_bytes) +serd_strlen(const uint8_t* str, size_t* n_bytes) { size_t n_chars = 0; size_t i = 0; - for (; utf8[i]; ++i) { - if ((utf8[i] & 0xC0) != 0x80) { + for (; str[i]; ++i) { + if ((str[i] & 0xC0) != 0x80) { // Does not start with `10', start of a new character ++n_chars; } } - if (out_n_bytes) { - *out_n_bytes = i + 1; + if (n_bytes) { + *n_bytes = i + 1; } return n_chars; } + #endif // SERD_INTERNAL_H |