summaryrefslogtreecommitdiffstats
path: root/third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h')
-rw-r--r--third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h b/third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h
new file mode 100644
index 0000000000..d81a1eacaf
--- /dev/null
+++ b/third_party/rust/cubeb-sys/libcubeb/src/cubeb_assert.h
@@ -0,0 +1,27 @@
+/*
+ * Copyright © 2017 Mozilla Foundation
+ *
+ * This program is made available under an ISC-style license. See the
+ * accompanying file LICENSE for details.
+ */
+
+#ifndef CUBEB_ASSERT
+#define CUBEB_ASSERT
+
+#include <stdio.h>
+#include <stdlib.h>
+
+/**
+ * This allow using an external release assert method. This file should only
+ * export a function or macro called XASSERT that aborts the program.
+ */
+
+#define XASSERT(expr) \
+ do { \
+ if (!(expr)) { \
+ fprintf(stderr, "%s:%d - fatal error: %s\n", __FILE__, __LINE__, #expr); \
+ abort(); \
+ } \
+ } while (0)
+
+#endif