Change the testing function so it doesn't reallocate the main buffer

This commit is contained in:
Abdelrahman Said 2023-09-18 22:28:48 +01:00
parent 3a0917ed58
commit b1b90bc6f5

View File

@ -43,7 +43,10 @@ void run_func_test(reptester *tester, reptest_func func, const char *func_name,
tester->total = 0;
tester->results = {};
if (type == ALLOC_TYPE_WITHOUT_MALLOC && !(tester->params.buffer)) {
char *buffer = NULL;
if (type == ALLOC_TYPE_WITH_MALLOC) {
buffer = tester->params.buffer;
tester->params.buffer = (char *)malloc(tester->params.read_size + 1);
memset(tester->params.buffer, 0, tester->params.read_size + 1);
}
@ -75,9 +78,9 @@ void run_func_test(reptester *tester, reptest_func func, const char *func_name,
++(tester->current_run);
}
if (type == ALLOC_TYPE_WITHOUT_MALLOC && tester->params.buffer) {
if (type == ALLOC_TYPE_WITH_MALLOC) {
free(tester->params.buffer);
tester->params.buffer = NULL;
tester->params.buffer = buffer;
}
print_results(tester, func_name);