diff options
author | Jeremy Allison <jra@samba.org> | 2001-08-17 20:29:40 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-08-17 20:29:40 +0000 |
commit | c5b809b3c22e538bd91a0064d304d65a6317a788 (patch) | |
tree | dcb71ea574ccff653397fbbed9452de2e6cfa1dc | |
parent | 9c65f259e370110202f0aa116513714b4bdc430a (diff) | |
download | samba-c5b809b3c22e538bd91a0064d304d65a6317a788.tar.gz samba-c5b809b3c22e538bd91a0064d304d65a6317a788.tar.xz samba-c5b809b3c22e538bd91a0064d304d65a6317a788.zip |
Realloc fix from HEAD.
Jeremy.
-rw-r--r-- | source/smbd/lanman.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/source/smbd/lanman.c b/source/smbd/lanman.c index 5d875b6f7cd..3d8844d5be1 100644 --- a/source/smbd/lanman.c +++ b/source/smbd/lanman.c @@ -1134,10 +1134,16 @@ static int get_server_info(uint32 servertype, if (!*ptr) continue; if (count == alloced) { + struct srv_info_struct *ts; + alloced += 10; - (*servers) = (struct srv_info_struct *) - Realloc(*servers,sizeof(**servers)*alloced); - if (!(*servers)) return(0); + ts = (struct srv_info_struct *)Realloc(*servers,sizeof(**servers)*alloced); + if (!ts) { + DEBUG(0,("get_server_info: failed to enlarge servers info struct!\n")); + return(0); + } + else + *servers = ts; memset((char *)((*servers)+count),'\0',sizeof(**servers)*(alloced-count)); } s = &(*servers)[count]; |