aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2019-05-05 14:10:27 +0200
committerDavid Robillard <d@drobilla.net>2019-12-20 10:26:55 -0500
commitc9ddbdae3b61183437a928b41e2a18c9704b68b4 (patch)
tree57b9536c8f0f8d003c22fca0c9d1549752480dc8 /src
parenta3dc7ce6fd9eddbb619e0e5a4a6a808415eb6228 (diff)
downloadserd-c9ddbdae3b61183437a928b41e2a18c9704b68b4.tar.gz
serd-c9ddbdae3b61183437a928b41e2a18c9704b68b4.tar.bz2
serd-c9ddbdae3b61183437a928b41e2a18c9704b68b4.zip
Improve add and chop prefix functions when given empty strings
Diffstat (limited to 'src')
-rw-r--r--src/reader.c9
-rw-r--r--src/writer.c9
2 files changed, 10 insertions, 8 deletions
diff --git a/src/reader.c b/src/reader.c
index bd15c73f..f247411a 100644
--- a/src/reader.c
+++ b/src/reader.c
@@ -198,14 +198,15 @@ serd_reader_free(SerdReader* reader)
}
void
-serd_reader_add_blank_prefix(SerdReader* reader,
- const char* prefix)
+serd_reader_add_blank_prefix(SerdReader* reader, const char* prefix)
{
free(reader->bprefix);
reader->bprefix_len = 0;
reader->bprefix = NULL;
- if (prefix) {
- reader->bprefix_len = strlen(prefix);
+
+ const size_t prefix_len = prefix ? strlen(prefix) : 0;
+ if (prefix_len) {
+ reader->bprefix_len = prefix_len;
reader->bprefix = (char*)malloc(reader->bprefix_len + 1);
memcpy(reader->bprefix, prefix, reader->bprefix_len + 1);
}
diff --git a/src/writer.c b/src/writer.c
index 7c057107..2e1e817b 100644
--- a/src/writer.c
+++ b/src/writer.c
@@ -1017,14 +1017,15 @@ serd_writer_new(SerdWorld* world,
}
void
-serd_writer_chop_blank_prefix(SerdWriter* writer,
- const char* prefix)
+serd_writer_chop_blank_prefix(SerdWriter* writer, const char* prefix)
{
free(writer->bprefix);
writer->bprefix_len = 0;
writer->bprefix = NULL;
- if (prefix) {
- writer->bprefix_len = strlen(prefix);
+
+ const size_t prefix_len = prefix ? strlen(prefix) : 0;
+ if (prefix_len) {
+ writer->bprefix_len = prefix_len;
writer->bprefix = (char*)malloc(writer->bprefix_len + 1);
memcpy(writer->bprefix, prefix, writer->bprefix_len + 1);
}