summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-08-17 20:29:40 +0000
committerJeremy Allison <jra@samba.org>2001-08-17 20:29:40 +0000
commitc5b809b3c22e538bd91a0064d304d65a6317a788 (patch)
treedcb71ea574ccff653397fbbed9452de2e6cfa1dc
parent9c65f259e370110202f0aa116513714b4bdc430a (diff)
downloadsamba-c5b809b3c22e538bd91a0064d304d65a6317a788.tar.gz
samba-c5b809b3c22e538bd91a0064d304d65a6317a788.tar.xz
samba-c5b809b3c22e538bd91a0064d304d65a6317a788.zip
Realloc fix from HEAD.
Jeremy.
-rw-r--r--source/smbd/lanman.c12
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];