diff options
author | Jeremy Allison <jra@samba.org> | 1998-01-24 12:43:53 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 1998-01-24 12:43:53 +0000 |
commit | 2b857315bd166c234d601fd0e67882a4c44f5191 (patch) | |
tree | 54cd10f830d28d951b3c41ba117cf52e98aaec67 /source | |
parent | c5023940995b6d2281fe7b2f85a6377f5ae605e7 (diff) | |
download | samba-2b857315bd166c234d601fd0e67882a4c44f5191.tar.gz samba-2b857315bd166c234d601fd0e67882a4c44f5191.tar.xz samba-2b857315bd166c234d601fd0e67882a4c44f5191.zip |
Added memory leak fix from Branko Cibej <branko.cibej@hermes.si>, plus
an extre debug message - both in free_service().
Jeremy.
Diffstat (limited to 'source')
-rw-r--r-- | source/param/loadparm.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/source/param/loadparm.c b/source/param/loadparm.c index ac0f932faed..d2db90fd678 100644 --- a/source/param/loadparm.c +++ b/source/param/loadparm.c @@ -1074,9 +1074,19 @@ static void free_service(service *pservice) if (!pservice) return; + if(pservice->szService) + DEBUG(5,("free_service: Freeing service %s\n", pservice->szService)); + + string_free(&pservice->szService); + if (pservice->copymap) + { + free(pservice->copymap); + pservice->copymap = NULL; + } + for (i=0;parm_table[i].label;i++) if ((parm_table[i].type == P_STRING || - parm_table[i].type == P_STRING) && + parm_table[i].type == P_USTRING) && parm_table[i].class == P_LOCAL) string_free((char **)(((char *)pservice) + PTR_DIFF(parm_table[i].ptr,&sDefault))); } |