commit 314aa1f26ecccce863986ef5c5a319905de3d12a
parent c07f674f77a21bed3c1ed4a8569b82cd92f8af28
Author: Louis Burda <quent.burda@gmail.com>
Date: Mon, 13 Mar 2023 21:20:35 +0100
Negate errno in return, positive values reserved
Diffstat:
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/test.c b/src/test.c
@@ -5,7 +5,7 @@
#include <string.h>
#include <stdlib.h>
-#define LIBVEC_ERR(rc) errx(1, "libvec: %s", strerror(rc))
+#define LIBVEC_ERR(rc) errx(1, "libvec: %s", rc < 0 ? strerror(-rc) : "???")
int
main(int argc, const char **argv)
diff --git a/src/vec.c b/src/vec.c
@@ -33,7 +33,7 @@ vec_init(struct vec *vec, size_t dsize, size_t cap)
vec->data = NULL;
if (vec->cap) {
vec->data = calloc(cap, dsize);
- if (!vec->data) return errno;
+ if (!vec->data) return -errno;
}
return 0;
@@ -55,7 +55,7 @@ vec_alloc(struct vec **vec, size_t dsize, size_t cap)
LIBVEC_CHECK(vec != NULL && dsize > 0 && cap > 0);
*vec = malloc(sizeof(struct vec));
- if (!*vec) return errno;
+ if (!*vec) return -errno;
rc = vec_init(*vec, dsize, cap);
if (rc) {
@@ -93,7 +93,7 @@ vec_resize(struct vec *vec, size_t cap)
vec->cap = cap;
alloc = realloc(vec->data, vec->cap * vec->dsize);
- if (!alloc) return errno;
+ if (!alloc) return -errno;
vec->data = alloc;
return 0;
@@ -113,7 +113,7 @@ vec_shrink(struct vec *vec)
}
alloc = realloc(vec->data, vec->cap * vec->dsize);
- if (!alloc) return errno;
+ if (!alloc) return -errno;
vec->data = alloc;
return 0;
@@ -131,7 +131,7 @@ vec_reserve(struct vec *vec, size_t index, size_t len)
if (vec->len + len > vec->cap)
vec->cap = vec->len + len;
alloc = realloc(vec->data, vec->cap * vec->dsize);
- if (!alloc) return errno;
+ if (!alloc) return -errno;
vec->data = alloc;
}