Module Name:    src
Committed By:   kre
Date:           Thu May 25 17:24:17 UTC 2023

Modified Files:
        src/usr.bin/realpath: realpath.c

Log Message:
If it isn't possible to determine the realpath() of ".", then simply
give up on attempting to resolve any relative path - there's no hope.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/usr.bin/realpath/realpath.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/realpath/realpath.c
diff -u src/usr.bin/realpath/realpath.c:1.2 src/usr.bin/realpath/realpath.c:1.3
--- src/usr.bin/realpath/realpath.c:1.2	Thu Jul 21 09:47:31 2022
+++ src/usr.bin/realpath/realpath.c	Thu May 25 17:24:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: realpath.c,v 1.2 2022/07/21 09:47:31 kre Exp $	*/
+/*	$NetBSD: realpath.c,v 1.3 2023/05/25 17:24:17 kre Exp $	*/
 /*-
  * SPDX-License-Identifier: BSD-3-Clause
  *
@@ -35,7 +35,7 @@
 #if 0
 __FBSDID("$FreeBSD: head/bin/realpath/realpath.c 326025 2017-11-20 19:49:47Z pfg $");
 #else
-__RCSID("$NetBSD: realpath.c,v 1.2 2022/07/21 09:47:31 kre Exp $");
+__RCSID("$NetBSD: realpath.c,v 1.3 2023/05/25 17:24:17 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -132,6 +132,10 @@ process(char *path)
 
 	if (p == NULL) {
 		p = realpath(".", buf);
+		if (p == NULL) {
+			warnx("relative path; current location unknown");
+			return false;
+		}
 		if ((size_t)snprintf(buf2, sizeof buf2, "%s/%s", buf, path)
 		    >= sizeof buf2) {
 			if (!qflag)

Reply via email to