From 6cdc6b13443c7b760d136bafd5253ef1ddf7f3cd Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 28 May 1998 06:29:57 +0000 Subject: [PATCH] fix realloc call for systems that don't handle realloc(NULL, ...) --- loadparm.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/loadparm.c b/loadparm.c index a302f46a..0ddbc61a 100644 --- a/loadparm.c +++ b/loadparm.c @@ -47,7 +47,6 @@ #define BOOL int #define False 0 #define True 1 -#define Realloc realloc #define PTR_DIFF(p1,p2) ((ptrdiff_t)(((char *)(p1)) - (char *)(p2))) #define strequal(a,b) (strcasecmp(a,b)==0) #define BOOLSTR(b) ((b) ? "Yes" : "No") @@ -367,7 +366,13 @@ static int add_a_service(service *pservice, char *name) i = iNumServices; - ServicePtrs = (service **)Realloc(ServicePtrs,sizeof(service *)*num_to_alloc); + if (ServicePtrs) { + ServicePtrs = (service **)realloc(ServicePtrs, + sizeof(service *)*num_to_alloc); + } else { + ServicePtrs = (service **)malloc(sizeof(service *)*num_to_alloc); + } + if (ServicePtrs) pSERVICE(iNumServices) = (service *)malloc(sizeof(service)); -- 2.34.1