diff options
author | Andrew Tridgell <tridge@samba.org> | 1998-05-28 06:29:57 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1998-05-28 06:29:57 +0000 |
commit | 6cdc6b13443c7b760d136bafd5253ef1ddf7f3cd (patch) | |
tree | 30d6a720849e640221b4108b86ca6e3fb86921f1 /loadparm.c | |
parent | 05848a2cc797b777473023b0dff6bba62668dc78 (diff) | |
download | android_external_rsync-6cdc6b13443c7b760d136bafd5253ef1ddf7f3cd.tar.gz android_external_rsync-6cdc6b13443c7b760d136bafd5253ef1ddf7f3cd.tar.bz2 android_external_rsync-6cdc6b13443c7b760d136bafd5253ef1ddf7f3cd.zip |
fix realloc call for systems that don't handle realloc(NULL, ...)
Diffstat (limited to 'loadparm.c')
-rw-r--r-- | loadparm.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -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)); |