From 809f9a9899b219e33ec839b3f9bee644fcfecacc Mon Sep 17 00:00:00 2001 From: dzwdz Date: Sat, 6 Aug 2022 23:53:42 +0200 Subject: shared assert.h --- src/shared/fsutil.c | 4 +--- src/shared/include/assert.h | 3 +++ src/shared/path.c | 4 +--- 3 files changed, 5 insertions(+), 6 deletions(-) create mode 100644 src/shared/include/assert.h (limited to 'src/shared') diff --git a/src/shared/fsutil.c b/src/shared/fsutil.c index a03ed0c..ffdcc43 100644 --- a/src/shared/fsutil.c +++ b/src/shared/fsutil.c @@ -1,9 +1,7 @@ +#include #include #include -// TODO shared assert -#define assert(...) {} - void fs_normslice(long *restrict offset, size_t *restrict length, size_t max, bool expand) { assert(max <= (size_t)LONG_MAX); diff --git a/src/shared/include/assert.h b/src/shared/include/assert.h new file mode 100644 index 0000000..7adf297 --- /dev/null +++ b/src/shared/include/assert.h @@ -0,0 +1,3 @@ +#pragma once +#define assert(stmt) do { if (!(stmt)) __badassert(__func__, __FILE__, __LINE__); } while (0) +_Noreturn void __badassert(const char *func, const char *file, int line); diff --git a/src/shared/path.c b/src/shared/path.c index 9d2eda3..175796f 100644 --- a/src/shared/path.c +++ b/src/shared/path.c @@ -1,10 +1,8 @@ +#include #include #include #include -// TODO shared assert -#define assert(...) - int path_simplify(const char *in, char *out, size_t len) { if (len == 0) return -1; // empty paths are invalid if (in[0] != '/') return -1; // so are relative paths -- cgit v1.2.3