From dfe59abeecba302a04a2d38a78a40fe356ec81a7 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 21 Jun 2020 17:38:13 +0200 Subject: Cleanup: Fix uninitialised variables --- src/n3.c | 38 +++++++++++++++++++------------------- src/serd_internal.h | 2 +- src/uri.c | 10 +++++----- src/writer.c | 7 ++++--- 4 files changed, 29 insertions(+), 28 deletions(-) (limited to 'src') diff --git a/src/n3.c b/src/n3.c index bcaf7aba..3a18bbac 100644 --- a/src/n3.c +++ b/src/n3.c @@ -203,9 +203,9 @@ read_utf8_bytes(SerdReader* reader, uint8_t bytes[4], uint32_t* size, uint8_t c) static SerdStatus read_utf8_character(SerdReader* reader, Ref dest, uint8_t c) { - uint32_t size; - uint8_t bytes[4]; - SerdStatus st = read_utf8_bytes(reader, bytes, &size, c); + uint32_t size = 0; + uint8_t bytes[4] = {0, 0, 0, 0}; + SerdStatus st = read_utf8_bytes(reader, bytes, &size, c); if (st) { push_bytes(reader, dest, replacement_char, 3); } else { @@ -217,9 +217,9 @@ read_utf8_character(SerdReader* reader, Ref dest, uint8_t c) static SerdStatus read_utf8_code(SerdReader* reader, Ref dest, uint32_t* code, uint8_t c) { - uint32_t size; - uint8_t bytes[4] = { 0, 0, 0, 0 }; - SerdStatus st = read_utf8_bytes(reader, bytes, &size, c); + uint32_t size = 0; + uint8_t bytes[4] = {0, 0, 0, 0}; + SerdStatus st = read_utf8_bytes(reader, bytes, &size, c); if (st) { push_bytes(reader, dest, replacement_char, 3); return st; @@ -255,7 +255,7 @@ static void read_comment(SerdReader* reader) { eat_byte_safe(reader, '#'); - int c; + int c = 0; while (((c = peek_byte(reader)) != 0xA) && c != 0xD && c != EOF && c) { eat_byte_safe(reader, c); } @@ -313,7 +313,7 @@ read_STRING_LITERAL_LONG(SerdReader* reader, SerdNodeFlags* flags, uint8_t q) const int c = peek_byte(reader); if (c == '\\') { eat_byte_safe(reader, c); - uint32_t code; + uint32_t code = 0; if (!read_ECHAR(reader, ref, flags) && !read_UCHAR(reader, ref, &code)) { r_err(reader, SERD_ERR_BAD_SYNTAX, @@ -426,9 +426,9 @@ is_PN_CHARS_BASE(const uint32_t c) static SerdStatus read_PN_CHARS_BASE(SerdReader* reader, Ref dest) { - uint32_t code; - const int c = peek_byte(reader); - SerdStatus st = SERD_SUCCESS; + uint32_t code = 0; + const int c = peek_byte(reader); + SerdStatus st = SERD_SUCCESS; if (is_alpha(c)) { push_byte(reader, dest, eat_byte_safe(reader, c)); } else if (c == EOF || !(c & 0x80)) { @@ -456,9 +456,9 @@ is_PN_CHARS(const uint32_t c) static SerdStatus read_PN_CHARS(SerdReader* reader, Ref dest) { - uint32_t code; - const int c = peek_byte(reader); - SerdStatus st = SERD_SUCCESS; + uint32_t code = 0; + const int c = peek_byte(reader); + SerdStatus st = SERD_SUCCESS; if (is_alpha(c) || is_digit(c) || c == '_' || c == '-') { push_byte(reader, dest, eat_byte_safe(reader, c)); } else if (c == EOF || !(c & 0x80)) { @@ -556,7 +556,7 @@ read_PN_LOCAL(SerdReader* reader, Ref dest, bool* ate_dot) static SerdStatus read_PN_PREFIX_tail(SerdReader* reader, Ref dest) { - int c; + int c = 0; while ((c = peek_byte(reader))) { // Middle: (PN_CHARS | '.')* if (c == '.') { push_byte(reader, dest, eat_byte_safe(reader, c)); @@ -709,7 +709,7 @@ static bool read_0_9(SerdReader* reader, Ref str, bool at_least_one) { unsigned count = 0; - for (int c; is_digit((c = peek_byte(reader))); ++count) { + for (int c = 0; is_digit((c = peek_byte(reader))); ++count) { push_byte(reader, str, eat_byte_safe(reader, c)); } if (at_least_one && count == 0) { @@ -922,7 +922,7 @@ static bool read_anon(SerdReader* reader, ReadContext ctx, bool subject, Ref* dest) { const SerdStatementFlags old_flags = *ctx.flags; - bool empty; + bool empty = false; eat_byte_safe(reader, '['); if ((empty = peek_delim(reader, ']'))) { *ctx.flags |= (subject) ? SERD_EMPTY_S : SERD_EMPTY_O; @@ -1088,7 +1088,7 @@ read_predicateObjectList(SerdReader* reader, ReadContext ctx, bool* ate_dot) } bool ate_semi = false; - int c; + int c = 0; do { read_ws_star(reader); switch (c = peek_byte(reader)) { @@ -1244,7 +1244,7 @@ read_base(SerdReader* reader, bool sparql, bool token) TRY_RET(eat_string(reader, "base", 4)); } - Ref uri; + Ref uri = 0; read_ws_star(reader); TRY_RET(uri = read_IRIREF(reader)); if (reader->base_sink) { diff --git a/src/serd_internal.h b/src/serd_internal.h index dea98000..7449c514 100644 --- a/src/serd_internal.h +++ b/src/serd_internal.h @@ -72,7 +72,7 @@ static inline void* serd_bufalloc(size_t size) { #ifdef HAVE_POSIX_MEMALIGN - void* ptr; + void* ptr = NULL; const int ret = posix_memalign(&ptr, SERD_PAGE_SIZE, size); return ret ? NULL : ptr; #else diff --git a/src/uri.c b/src/uri.c index dd306bf5..865e40ec 100644 --- a/src/uri.c +++ b/src/uri.c @@ -102,7 +102,7 @@ serd_uri_string_has_scheme(const uint8_t* utf8) return false; // Invalid scheme initial character, URI is relative } - for (uint8_t c; (c = *++utf8) != '\0';) { + for (uint8_t c = 0; (c = *++utf8) != '\0';) { if (!is_uri_scheme_char(c)) { return false; } else if (c == ':') { @@ -153,7 +153,7 @@ maybe_authority: if (*ptr == '/' && *(ptr + 1) == '/') { ptr += 2; out->authority.buf = ptr; - for (uint8_t c; (c = *ptr) != '\0'; ++ptr) { + for (uint8_t c = 0; (c = *ptr) != '\0'; ++ptr) { switch (c) { case '/': goto path; case '?': goto query; @@ -176,7 +176,7 @@ path: } out->path.buf = ptr; out->path.len = 0; - for (uint8_t c; (c = *ptr) != '\0'; ++ptr) { + for (uint8_t c = 0; (c = *ptr) != '\0'; ++ptr) { switch (c) { case '?': goto query; case '#': goto fragment; @@ -192,7 +192,7 @@ path: query: if (*ptr == '?') { out->query.buf = ++ptr; - for (uint8_t c; (c = *ptr) != '\0'; ++ptr) { + for (uint8_t c = 0; (c = *ptr) != '\0'; ++ptr) { if (c == '#') { goto fragment; } @@ -287,7 +287,7 @@ remove_dot_segments(const uint8_t* path, size_t len, size_t* up) static void merge(SerdChunk* base, SerdChunk* path) { - size_t up; + size_t up = 0; const uint8_t* begin = remove_dot_segments(path->buf, path->len, &up); const uint8_t* end = path->buf + path->len; diff --git a/src/writer.c b/src/writer.c index 15ccd21c..aeac9b36 100644 --- a/src/writer.c +++ b/src/writer.c @@ -545,9 +545,10 @@ write_curie(SerdWriter* const writer, const Field field, const SerdStatementFlags flags) { - SerdChunk prefix; - SerdChunk suffix; - SerdStatus st; + SerdChunk prefix = {NULL, 0}; + SerdChunk suffix = {NULL, 0}; + SerdStatus st = SERD_SUCCESS; + switch (writer->syntax) { case SERD_NTRIPLES: case SERD_NQUADS: -- cgit v1.2.1