summaryrefslogtreecommitdiff
path: root/t/op
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>2001-10-22 19:08:35 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>2001-10-22 19:08:35 +0000
commitb36536dcdb83c41175f684cf7e8bc7c6d46dd23b (patch)
tree159d5923b85268142a497648613c46c980470ac7 /t/op
parent9c58267e738fc4692a89ce3e0806877caac82526 (diff)
parentdd570ea6ed120327ae1b94a6071154a927352720 (diff)
downloadperl-b36536dcdb83c41175f684cf7e8bc7c6d46dd23b.tar.gz
Integrate mainline (for Arthurs thread.xs fix)
p4raw-id: //depot/perlio@12579
Diffstat (limited to 't/op')
-rwxr-xr-xt/op/groups.t10
1 files changed, 9 insertions, 1 deletions
diff --git a/t/op/groups.t b/t/op/groups.t
index 3228729426..8c146499d2 100755
--- a/t/op/groups.t
+++ b/t/op/groups.t
@@ -70,6 +70,10 @@ unless (eval { getgrgid(0); 1 }) {
exit 0;
}
+chomp($groups);
+
+print "# groups = $groups\n";
+
# Remember that group names can contain whitespace, '-', et cetera.
# That is: do not \w, do not \S.
if ($groups =~ /groups=(.+)( [ug]id=|$)/) {
@@ -107,6 +111,8 @@ if ($^O eq 'cygwin') { # basegroup on Cygwin has id = 0.
}
$seen{$pwgid}++;
+print "# pwgid = $pwgid, pwgnam = $pwgnam\n";
+
for (split(' ', $()) {
next if $seen{$_}++;
($group) = getgrgid($_);
@@ -118,6 +124,8 @@ for (split(' ', $()) {
}
}
+print "# gr = @gr\n";
+
if ($^O =~ /^(?:uwin|solaris)$/) {
# Or anybody else who can have spaces in group names.
$gr1 = join(' ', grep(!$did{$_}++, sort split(' ', join(' ', @gr))));
@@ -127,7 +135,7 @@ if ($^O =~ /^(?:uwin|solaris)$/) {
$gr2 = join(' ', grep(!$basegroup{$_}++, sort split(' ',$groups)));
-if ($gr1 eq $gr2) {
+if ($gr1 eq $gr2 || ($gr1 eq '' && $gr2 eq $pwgid)) {
print "ok 1\n";
}
else {