From d6db5bb9a91b703a2c26b57c8e90ff6d841f15e6 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Tue, 13 Jan 1998 10:08:11 +0000 Subject: [PATCH] Set errno to ENOENT, not EINVAL. This is consistent with most other implementations. --- lib/stat.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/stat.c b/lib/stat.c index 00b956adb..11f159f84 100644 --- a/lib/stat.c +++ b/lib/stat.c @@ -1,7 +1,7 @@ /* Work around the bug in some systems whereby stat succeeds when given the zero-length file name argument. The stat from SunOS4.1.4 has this bug. - Copyright (C) 1997 Free Software Foundation, Inc. + Copyright (C) 1997, 1998 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -33,7 +33,13 @@ extern int errno; #endif -/* FIXME: describe. */ +/* This is a wrapper for stat(2). + If FILE is the empty string, fail with errno == ENOENT. + Otherwise, return the result of calling the real stat. + + This works around the bug in some systems whereby stat succeeds when + given the zero-length file name argument. The stat from SunOS4.1.4 + has this bug. */ int rpl_stat (file, sbuf) @@ -42,7 +48,7 @@ rpl_stat (file, sbuf) { if (file && *file == 0) { - errno = EINVAL; + errno = ENOENT; return -1; } -- 2.11.0