From 3c309cdfd571a8ddb7eb7420265edbc41da3ad25 Mon Sep 17 00:00:00 2001
From: Dominik Loidolt <dominik.loidolt@univie.ac.at>
Date: Wed, 17 Apr 2024 16:37:50 +0200
Subject: [PATCH] Fix mock of malloc function in test_cmp_max_used_bits_list.c

---
 .../test_cmp_max_used_bits_list.c                 | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/test/cmp_max_used_bits/test_cmp_max_used_bits_list.c b/test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
index 2557d82..21e6c08 100644
--- a/test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
+++ b/test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
@@ -17,22 +17,28 @@
  */
 
 
+#if !defined(__sparc__) && !defined(_WIN32) && !defined(_WIN64)
+#  define MAKE_MALLOC_FAIL_TEST
+#  define _GNU_SOURCE
+#  include <dlfcn.h>
+#  include <stdlib.h>
+#endif
+
 #include <string.h>
 
 #include <unity.h>
 
 #include <cmp_max_used_bits_list.h>
 
-#ifndef __sparc__
+#ifdef MAKE_MALLOC_FAIL_TEST
 /* if set the mock malloc will fail (return NULL) */
 static int malloc_fail;
 
 
 /*
  * mock of the malloc function; can controlled with the global malloc_fail variable
- * see:https://jayconrod.com/posts/23/tutorial--function-interposition-in-linux
+ * see: https://jayconrod.com/posts/23/tutorial--function-interposition-in-linux
  */
-#include <dlfcn.h>
 
 void* malloc(size_t size)
 {
@@ -47,7 +53,6 @@ void* malloc(size_t size)
 		TEST_ASSERT_NOT_NULL(real_malloc);
 	}
 
-	fprintf(stderr, "malloc(%zu)\n", size);
 	return real_malloc(size);
 }
 #endif
@@ -181,7 +186,7 @@ void test_cmp_max_used_bits_list(void)
 	cmp_max_used_bits_list_empty();
 
 	/* error case */
-#ifndef __sparc__
+#ifdef MAKE_MALLOC_FAIL_TEST
 	malloc_fail = 1;
 	return_val = cmp_max_used_bits_list_add(&i_36);
 	TEST_ASSERT_EQUAL_INT(return_val, -1);
-- 
GitLab