From 64f8a658a9920a08f81159e6483d01ffb90fd7b6 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Tue, 2 Nov 2004 02:15:51 +0000 Subject: [PATCH] Bugfix: use smb_close_fp() instead of fclose() to close files opened via smb_open_* - prevents double close of FILE* causing segfault. --- src/sbbs3/chksmb.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/sbbs3/chksmb.c b/src/sbbs3/chksmb.c index cfb283cd09..314669ed59 100644 --- a/src/sbbs3/chksmb.c +++ b/src/sbbs3/chksmb.c @@ -535,12 +535,10 @@ int main(int argc, char **argv) smb_freemsgmem(&msg); } - if(number) - FREE(number); + FREE_AND_NULL(number); fprintf(stderr,"\r%79s\r100%%\n",""); - if(chkalloc && !(smb.status.attr&SMB_HYPERALLOC)) { fprintf(stderr,"\nChecking %s Data Blocks\n\n",smb.file); @@ -557,8 +555,8 @@ int main(int argc, char **argv) deldatblocks++; } - fclose(smb.sha_fp); - fclose(smb.sda_fp); + smb_close_ha(&smb); + smb_close_da(&smb); fprintf(stderr,"\r%79s\r100%%\n",""); } @@ -640,8 +638,8 @@ int main(int argc, char **argv) } fprintf(stderr,"\r%79s\r100%%\n",""); } - FREE(number); - FREE(offset); + FREE_AND_NULL(number); + FREE_AND_NULL(offset); } /* if(total) */ -- GitLab