Unverified Commit f5d25850 authored by Michael Grunder's avatar Michael Grunder Committed by GitHub
Browse files

Use unique names for allocator struct members (#823)

Using `strdup` as a struct member causes issues in older gcc
parent 8e0264cf
...@@ -34,11 +34,11 @@ ...@@ -34,11 +34,11 @@
#include <stdlib.h> #include <stdlib.h>
hiredisAllocFuncs hiredisAllocFns = { hiredisAllocFuncs hiredisAllocFns = {
.malloc = malloc, .mallocFn = malloc,
.calloc = calloc, .callocFn = calloc,
.realloc = realloc, .reallocFn = realloc,
.strdup = strdup, .strdupFn = strdup,
.free = free, .freeFn = free,
}; };
/* Override hiredis' allocators with ones supplied by the user */ /* Override hiredis' allocators with ones supplied by the user */
...@@ -53,34 +53,34 @@ hiredisAllocFuncs hiredisSetAllocators(hiredisAllocFuncs *override) { ...@@ -53,34 +53,34 @@ hiredisAllocFuncs hiredisSetAllocators(hiredisAllocFuncs *override) {
/* Reset allocators to use libc defaults */ /* Reset allocators to use libc defaults */
void hiredisResetAllocators(void) { void hiredisResetAllocators(void) {
hiredisAllocFns = (hiredisAllocFuncs) { hiredisAllocFns = (hiredisAllocFuncs) {
.malloc = malloc, .mallocFn = malloc,
.calloc = calloc, .callocFn = calloc,
.realloc = realloc, .reallocFn = realloc,
.strdup = strdup, .strdupFn = strdup,
.free = free, .freeFn = free,
}; };
} }
#ifdef _WIN32 #ifdef _WIN32
void *hi_malloc(size_t size) { void *hi_malloc(size_t size) {
return hiredisAllocFns.malloc(size); return hiredisAllocFns.mallocFn(size);
} }
void *hi_calloc(size_t nmemb, size_t size) { void *hi_calloc(size_t nmemb, size_t size) {
return hiredisAllocFns.calloc(nmemb, size); return hiredisAllocFns.callocFn(nmemb, size);
} }
void *hi_realloc(void *ptr, size_t size) { void *hi_realloc(void *ptr, size_t size) {
return hiredisAllocFns.realloc(ptr, size); return hiredisAllocFns.reallocFn(ptr, size);
} }
char *hi_strdup(const char *str) { char *hi_strdup(const char *str) {
return hiredisAllocFns.strdup(str); return hiredisAllocFns.strdupFn(str);
} }
void hi_free(void *ptr) { void hi_free(void *ptr) {
hiredisAllocFns.free(ptr); hiredisAllocFns.freeFn(ptr);
} }
#endif #endif
...@@ -39,11 +39,11 @@ extern "C" { ...@@ -39,11 +39,11 @@ extern "C" {
/* Structure pointing to our actually configured allocators */ /* Structure pointing to our actually configured allocators */
typedef struct hiredisAllocFuncs { typedef struct hiredisAllocFuncs {
void *(*malloc)(size_t); void *(*mallocFn)(size_t);
void *(*calloc)(size_t,size_t); void *(*callocFn)(size_t,size_t);
void *(*realloc)(void*,size_t); void *(*reallocFn)(void*,size_t);
char *(*strdup)(const char*); char *(*strdupFn)(const char*);
void (*free)(void*); void (*freeFn)(void*);
} hiredisAllocFuncs; } hiredisAllocFuncs;
hiredisAllocFuncs hiredisSetAllocators(hiredisAllocFuncs *ha); hiredisAllocFuncs hiredisSetAllocators(hiredisAllocFuncs *ha);
...@@ -55,23 +55,23 @@ void hiredisResetAllocators(void); ...@@ -55,23 +55,23 @@ void hiredisResetAllocators(void);
extern hiredisAllocFuncs hiredisAllocFns; extern hiredisAllocFuncs hiredisAllocFns;
static inline void *hi_malloc(size_t size) { static inline void *hi_malloc(size_t size) {
return hiredisAllocFns.malloc(size); return hiredisAllocFns.mallocFn(size);
} }
static inline void *hi_calloc(size_t nmemb, size_t size) { static inline void *hi_calloc(size_t nmemb, size_t size) {
return hiredisAllocFns.calloc(nmemb, size); return hiredisAllocFns.callocFn(nmemb, size);
} }
static inline void *hi_realloc(void *ptr, size_t size) { static inline void *hi_realloc(void *ptr, size_t size) {
return hiredisAllocFns.realloc(ptr, size); return hiredisAllocFns.reallocFn(ptr, size);
} }
static inline char *hi_strdup(const char *str) { static inline char *hi_strdup(const char *str) {
return hiredisAllocFns.strdup(str); return hiredisAllocFns.strdupFn(str);
} }
static inline void hi_free(void *ptr) { static inline void hi_free(void *ptr) {
hiredisAllocFns.free(ptr); hiredisAllocFns.freeFn(ptr);
} }
#else #else
......
...@@ -547,10 +547,10 @@ static void *hi_realloc_fail(void *ptr, size_t size) { ...@@ -547,10 +547,10 @@ static void *hi_realloc_fail(void *ptr, size_t size) {
static void test_allocator_injection(void) { static void test_allocator_injection(void) {
hiredisAllocFuncs ha = { hiredisAllocFuncs ha = {
.malloc = hi_malloc_fail, .mallocFn = hi_malloc_fail,
.calloc = hi_calloc_fail, .callocFn = hi_calloc_fail,
.realloc = hi_realloc_fail, .reallocFn = hi_realloc_fail,
.free = NULL, .freeFn = NULL,
}; };
// Override hiredis allocators // Override hiredis allocators
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment