Date: Fri, 5 Jan 2018 07:09:19 +0000 (UTC) From: Warner Losh <imp@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r327573 - head/usr.sbin/efibootmgr Message-ID: <201801050709.w0579JCn031156@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: imp Date: Fri Jan 5 07:09:19 2018 New Revision: 327573 URL: https://svnweb.freebsd.org/changeset/base/327573 Log: Free options before setting them. This will prevent us from leaking memory when we have multiple copies of the same option from being specified. Sponsored by: Netflix Modified: head/usr.sbin/efibootmgr/efibootmgr.c Modified: head/usr.sbin/efibootmgr/efibootmgr.c ============================================================================== --- head/usr.sbin/efibootmgr/efibootmgr.c Fri Jan 5 07:09:09 2018 (r327572) +++ head/usr.sbin/efibootmgr/efibootmgr.c Fri Jan 5 07:09:19 2018 (r327573) @@ -217,6 +217,7 @@ parse_args(int argc, char *argv[]) opts.dry_run = true; break; case 'e': + free(opts.env); opts.env = strdup(optarg); break; case 'h': @@ -224,12 +225,15 @@ parse_args(int argc, char *argv[]) errx(1, "%s", USAGE); break; case 'k': + free(opts.kernel); opts.kernel = strdup(optarg); break; case 'L': + free(opts.label); opts.label = strdup(optarg); break; case 'l': + free(opts.loader); opts.loader = strdup(optarg); opts.loader = mangle_loader(opts.loader); break; @@ -244,6 +248,7 @@ parse_args(int argc, char *argv[]) opts.once = true; break; case 'o': + free(opts.order); opts.order = strdup(optarg); break; case 'T':
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801050709.w0579JCn031156>