Module Name:    src
Committed By:   sjg
Date:           Tue Mar 29 17:19:22 UTC 2011

Modified Files:
        src/usr.bin/make: cond.c

Log Message:
CondDoExists: Avoid use after free()


To generate a diff of this commit:
cvs rdiff -u -r1.61 -r1.62 src/usr.bin/make/cond.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/make/cond.c
diff -u src/usr.bin/make/cond.c:1.61 src/usr.bin/make/cond.c:1.62
--- src/usr.bin/make/cond.c:1.61	Sun Feb 13 21:24:42 2011
+++ src/usr.bin/make/cond.c	Tue Mar 29 17:19:22 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: cond.c,v 1.61 2011/02/13 21:24:42 sjg Exp $	*/
+/*	$NetBSD: cond.c,v 1.62 2011/03/29 17:19:22 sjg Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
@@ -70,14 +70,14 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: cond.c,v 1.61 2011/02/13 21:24:42 sjg Exp $";
+static char rcsid[] = "$NetBSD: cond.c,v 1.62 2011/03/29 17:19:22 sjg Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)cond.c	8.2 (Berkeley) 1/2/94";
 #else
-__RCSID("$NetBSD: cond.c,v 1.61 2011/02/13 21:24:42 sjg Exp $");
+__RCSID("$NetBSD: cond.c,v 1.62 2011/03/29 17:19:22 sjg Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -401,16 +401,16 @@
     char    *path;
 
     path = Dir_FindFile(arg, dirSearchPath);
+    if (DEBUG(COND)) {
+	fprintf(debug_file, "exists(%s) result is \"%s\"\n",
+	       arg, path ? path : "");
+    }    
     if (path != NULL) {
 	result = TRUE;
 	free(path);
     } else {
 	result = FALSE;
     }
-    if (DEBUG(COND)) {
-	fprintf(debug_file, "exists(%s) result is \"%s\"\n",
-	       arg, path ? path : "");
-    }    
     return (result);
 }
 

Reply via email to