aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Marc Valin <jmvalin@jmvalin.ca>2024-03-03 02:45:39 -0500
committerJean-Marc Valin <jmvalin@jmvalin.ca>2024-03-03 02:45:39 -0500
commit32d4d874accd322f7e237b734678542fea88393b (patch)
tree7b85a42ba733ad39ceb7f833cd0305364d3794d0
parent33a89b7ea8db4d9a6fcc802aa85264e13a4ebbaf (diff)
downloadlibopus-32d4d874accd322f7e237b734678542fea88393b.tar.gz
Basic void pointer check
Only manage to warn on non-pointers
-rw-r--r--include/opus_defines.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/opus_defines.h b/include/opus_defines.h
index e478641c..cd8f4dde 100644
--- a/include/opus_defines.h
+++ b/include/opus_defines.h
@@ -187,11 +187,13 @@ extern "C" {
#define __opus_check_uint_ptr(ptr) (ptr)
#define __opus_check_uint8_ptr(ptr) (ptr)
#define __opus_check_val16_ptr(ptr) (ptr)
+#define __opus_check_void_ptr(ptr) (ptr)
#else
#define __opus_check_int_ptr(ptr) ((ptr) + ((ptr) - (opus_int32*)(ptr)))
#define __opus_check_uint_ptr(ptr) ((ptr) + ((ptr) - (opus_uint32*)(ptr)))
#define __opus_check_uint8_ptr(ptr) ((ptr) + ((ptr) - (opus_uint8*)(ptr)))
#define __opus_check_val16_ptr(ptr) ((ptr) + ((ptr) - (opus_val16*)(ptr)))
+#define __opus_check_void_ptr(x) ((void)((void *)0 == (x)), (x))
#endif
/** @endcond */
@@ -644,7 +646,7 @@ extern "C" {
/** Provide external DNN weights from binary object (only when explicitly built without the weights)
* @hideinitializer */
-#define OPUS_SET_DNN_BLOB(data, len) OPUS_SET_DNN_BLOB_REQUEST, (data), __opus_check_int(len)
+#define OPUS_SET_DNN_BLOB(data, len) OPUS_SET_DNN_BLOB_REQUEST, __opus_check_void_ptr(data), __opus_check_int(len)
/**@}*/