Module Name:    src
Committed By:   riz
Date:           Fri Feb  8 20:49:21 UTC 2013

Modified Files:
        src/usr.bin/grep [netbsd-6]: util.c

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #795):
        usr.bin/grep/util.c: revision 1.17
Fix memory leak in  file_matching().


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.13.6.1 src/usr.bin/grep/util.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/grep/util.c
diff -u src/usr.bin/grep/util.c:1.13 src/usr.bin/grep/util.c:1.13.6.1
--- src/usr.bin/grep/util.c:1.13	Mon Apr 18 23:22:42 2011
+++ src/usr.bin/grep/util.c	Fri Feb  8 20:49:21 2013
@@ -1,4 +1,4 @@
-/*	$NetBSD: util.c,v 1.13 2011/04/18 23:22:42 joerg Exp $	*/
+/*	$NetBSD: util.c,v 1.13.6.1 2013/02/08 20:49:21 riz Exp $	*/
 /*	$FreeBSD: head/usr.bin/grep/util.c 211496 2010-08-19 09:28:59Z des $	*/
 /*	$OpenBSD: util.c,v 1.39 2010/07/02 22:18:03 tedu Exp $	*/
 
@@ -34,7 +34,7 @@
 #endif
 
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: util.c,v 1.13 2011/04/18 23:22:42 joerg Exp $");
+__RCSID("$NetBSD: util.c,v 1.13.6.1 2013/02/08 20:49:21 riz Exp $");
 
 #include <sys/stat.h>
 #include <sys/types.h>
@@ -74,9 +74,10 @@ file_matching(const char *fname)
 	for (i = 0; i < fpatterns; ++i) {
 		if (fnmatch(fpattern[i].pat, fname, 0) == 0 ||
 		    fnmatch(fpattern[i].pat, fname_base, 0) == 0) {
-			if (fpattern[i].mode == EXCL_PAT)
+			if (fpattern[i].mode == EXCL_PAT) {
+				free(fname_copy);
 				return (false);
-			else
+			} else
 				ret = true;
 		}
 	}

Reply via email to