summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
authorngie <ngie@FreeBSD.org>2015-10-21 11:38:48 +0000
committerngie <ngie@FreeBSD.org>2015-10-21 11:38:48 +0000
commit782fe807afafb3dfe9fbc2a451a12b9534f15201 (patch)
tree431f744a2aa42300204d53e0a703a97cb90bb476 /usr.sbin
parentee786e40e8b0e419c466fa43971ad81e124ba78e (diff)
downloadFreeBSD-src-782fe807afafb3dfe9fbc2a451a12b9534f15201.zip
FreeBSD-src-782fe807afafb3dfe9fbc2a451a12b9534f15201.tar.gz
Free buffer before returning from cd9660_write_path_table to avoid
leaking it after returning from the function MFC after: 1 week PR: 203647 Submitted by: Thomas Schmitt <scdbackup@gmx.net> Coverity CID: 978431 Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/makefs/cd9660/cd9660_write.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.sbin/makefs/cd9660/cd9660_write.c b/usr.sbin/makefs/cd9660/cd9660_write.c
index f27a76f..bdca0e6 100644
--- a/usr.sbin/makefs/cd9660/cd9660_write.c
+++ b/usr.sbin/makefs/cd9660/cd9660_write.c
@@ -165,7 +165,7 @@ cd9660_write_path_table(FILE *fd, off_t sector, int mode)
diskStructure.pathTableLength);
unsigned char *buffer;
unsigned char *buffer_head;
- int len;
+ int len, ret;
path_table_entry temp_entry;
cd9660node *ptcur;
@@ -213,8 +213,10 @@ cd9660_write_path_table(FILE *fd, off_t sector, int mode)
ptcur = ptcur->ptnext;
}
- return cd9660_write_filedata(fd, sector, buffer_head,
+ ret = cd9660_write_filedata(fd, sector, buffer_head,
path_table_sectors);
+ free(buffer);
+ return ret;
}
OpenPOWER on IntegriCloud