From 197caaa8e0639309ecceb80cb2d2d48c23add3e4 Mon Sep 17 00:00:00 2001 From: sjg Date: Tue, 20 Apr 2010 17:18:08 +0000 Subject: [PATCH] On some systems realpath will prefix make with cwd, so make sure we can stat(2) the value for .MAKE --- usr.bin/make/main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.bin/make/main.c b/usr.bin/make/main.c index 33f1a9027580..dfa55397926e 100644 --- a/usr.bin/make/main.c +++ b/usr.bin/make/main.c @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.178 2010/04/14 16:16:17 sjg Exp $ */ +/* $NetBSD: main.c,v 1.179 2010/04/20 17:18:08 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.178 2010/04/14 16:16:17 sjg Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.179 2010/04/20 17:18:08 sjg Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 1989, 1990, 1993\ #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.178 2010/04/14 16:16:17 sjg Exp $"); +__RCSID("$NetBSD: main.c,v 1.179 2010/04/20 17:18:08 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -899,7 +899,7 @@ main(int argc, char **argv) p1 = argv[0]; } else { p1 = realpath(argv[0], mdpath); - if (!p1 || *p1 != '/') { + if (!p1 || *p1 != '/' || stat(p1, &sb) < 0) { p1 = argv[0]; /* realpath failed */ } }