svn commit: r314677 - head/lib/libc/gen

Conrad Meyer cem at FreeBSD.org
Sat Mar 4 20:46:58 UTC 2017


Author: cem
Date: Sat Mar  4 20:46:57 2017
New Revision: 314677
URL: https://svnweb.freebsd.org/changeset/base/314677

Log:
  fts: Fix a potential memory leak in error case
  
  Dan Krejsa reports a potential memory leak in an fts_build error case,
  detected by Coverity.  (It doesn't seem to show up in Coverity Scan, so I
  don't have a CID to point to.)
  
  I don't know whether it is actually possible to arrive in this case with a
  non-empty 'head' list.  The cost is low, though.  One additional branch in a
  terminal error case isn't the end of the world.
  
  PR:		217125
  Submitted by:	Dan Krejsa <dan.krejsa at gmail.com>

Modified:
  head/lib/libc/gen/fts.c

Modified: head/lib/libc/gen/fts.c
==============================================================================
--- head/lib/libc/gen/fts.c	Sat Mar  4 20:35:34 2017	(r314676)
+++ head/lib/libc/gen/fts.c	Sat Mar  4 20:46:57 2017	(r314677)
@@ -850,6 +850,7 @@ mem1:				saved_errno = errno;
 	    (cur->fts_level == FTS_ROOTLEVEL ?
 	    FCHDIR(sp, sp->fts_rfd) :
 	    fts_safe_changedir(sp, cur->fts_parent, -1, ".."))) {
+		fts_lfree(head);
 		cur->fts_info = FTS_ERR;
 		SET(FTS_STOP);
 		return (NULL);


More information about the svn-src-all mailing list