From 4b59b4789cd743dc874399784a1918e9f11086d1 Mon Sep 17 00:00:00 2001 From: Evan Burkey Date: Tue, 13 Aug 2024 12:57:36 -0700 Subject: [PATCH] fix compiler warnings --- Makefile | 13 +++++++++++++ src/binarytree.c | 4 ++-- src/crypto.c | 4 ++-- src/vector.c | 6 +++--- tests/tests.c | 1 + 5 files changed, 21 insertions(+), 7 deletions(-) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b68e709 --- /dev/null +++ b/Makefile @@ -0,0 +1,13 @@ +CMAKE_OPTS=-DCMAKE_EXPORT_COMPILE_COMMANDS=1 + +all: + mkdir -p build + cd build && \ + cmake ${CMAKE_OPTS} .. && \ + $(MAKE) && \ + cp compile_commands.json .. + +clean: + rm -rf build + rm -f compile_commands.json + diff --git a/src/binarytree.c b/src/binarytree.c index 06e4f16..a0f7557 100644 --- a/src/binarytree.c +++ b/src/binarytree.c @@ -146,8 +146,8 @@ void print_node(char *prefix, BinTreeNode *node, int is_left, void (*pfunc)(void pfunc(node->data); char new_prefix[64]; memset(new_prefix, 0, 64); - strcat(new_prefix, prefix); - strcat(new_prefix, (is_left == 1 ? "│ " : " ")); + strlcat(new_prefix, prefix, 64); + strlcat(new_prefix, (is_left == 1 ? "│ " : " "), 64 - strlen(prefix)); print_node(new_prefix, node->left, 1, pfunc); print_node(new_prefix, node->right, 0, pfunc); } diff --git a/src/crypto.c b/src/crypto.c index c3a42e6..3d47bb0 100644 --- a/src/crypto.c +++ b/src/crypto.c @@ -216,10 +216,10 @@ unsigned char *hex_decode(const char *orig, size_t *sz) { char *buf = malloc(sizeof(char) * buf_sz); if (strlen(sptr) % 2 != 0) { - strcpy(buf+ 1, sptr); + strlcpy(buf + 1, sptr, buf_sz - 1); buf[0] = '0'; } else { - strcpy(buf, sptr); + strlcpy(buf, sptr, buf_sz); } buf[buf_sz - 1] = '\0'; diff --git a/src/vector.c b/src/vector.c index 8204b3e..e84409d 100644 --- a/src/vector.c +++ b/src/vector.c @@ -116,10 +116,10 @@ int vec_shrink(Vector *vec) { vec->capacity = vec_len(vec); -#if !defined(__OpenBSD__) || defined(__linux) - vec->elements = reallocarray(vec->elements, vec->capacity, sizeof(void *)); -#else +#if !defined(__OpenBSD__) vec->elements = reallocf(vec->elements, sizeof(void *) * vec->capacity); +#else + vec->elements = reallocarray(vec->elements, vec->capacity, sizeof(void *)); #endif if (vec->elements == NULL) { diff --git a/tests/tests.c b/tests/tests.c index f42f6ad..1d5a2a8 100644 --- a/tests/tests.c +++ b/tests/tests.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include "lflinkedlist.h"