From: Jim Meyering Date: Thu, 13 Mar 1997 05:17:16 +0000 (+0000) Subject: . X-Git-Tag: SH-UTILS-1_16a~180 X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=5ed7bf6069bf4888e1abfe58f86d0843db06f462;p=thirdparty%2Fcoreutils.git . --- diff --git a/lib/chown.c b/lib/chown.c index 2d3b4e8212..1d3346d364 100644 --- a/lib/chown.c +++ b/lib/chown.c @@ -34,8 +34,17 @@ chown (file, gid, uid) { if (gid == (gid_t) -1 || uid == (uid_t) -1) { - /* Stat file to get id(s) that will remain unchanged. */ - FIXME + struct stat file_stats; + + /* Stat file to get id(s) that should remain unchanged. */ + if (stat (file, &file_stats)) + return 1; + + if (gid == (gid_t) -1) + gid = file_stats.st_gid; + + if (uid == (uid_t) -1) + uid = file_stats.st_uid; } #undef chown