Elias Pipping <[EMAIL PROTECTED]> wrote:
> On Sat, Jan 26, 2008 at 05:34:17PM +0100, Jim Meyering wrote:
>>
>> Here's an additional patch that should get us past the latest failure.
>
> Unfortunately, it doesn't.
...
> ++ stat -c '%u %g' b
> + s='1000 0'
> + test 'x1000 0' '!=' 'x1000 1000'
> + test 'setuidgid -g 1000,1001 1000 cp:1000 0' = 'cp:1000 0'
> + echo './preserve-gid: setuidgid -g 1000,1001 1000 cp a0 b: 1000 1000 !=
> 1000 0'
> ./preserve-gid: setuidgid -g 1000,1001 1000 cp a0 b: 1000 1000 != 1000 0
But it came close :-)
Thanks for the quick feedback.
I should have matched the whole command, from "setuidgid -g...cp",
not just "cp".
Here's a better one:
* tests/cp/preserve-gid: accommodate Darwin9 oddity.
diff --git a/tests/cp/preserve-gid b/tests/cp/preserve-gid
index 9537dc0..82ee861 100755
--- a/tests/cp/preserve-gid
+++ b/tests/cp/preserve-gid
@@ -33,8 +33,15 @@ t0() {
"$@" "$f" b || exit 1
s=`stat -c '%u %g' b`
if test "x$s" != "x$u $g"; then
- echo "$0: $* $f b: $u $g != $s" 1>&2
- (exit 1); exit 1
+ # Allow the actual group to match that of the parent directory
+ # (it was set to 0 above) if the command was "cp".
+ case "$@:$s" in
+ *" cp:$u 0") ;;
+ *)
+ echo "$0: $* $f b: $u $g != $s" 1>&2
+ (exit 1); exit 1
+ ;;
+ esac
fi
}
--
1.5.4.rc4.26.g228a
_______________________________________________
Bug-coreutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-coreutils