unofficial mirror of meta@public-inbox.org
 help / color / mirror / Atom feed
* [PATCH] t/spawn: Find invalid PID to try to join its process group
@ 2022-06-10  3:21 Thiago Jung Bauermann
  2022-06-10  9:55 ` Eric Wong
  0 siblings, 1 reply; 6+ messages in thread
From: Thiago Jung Bauermann @ 2022-06-10  3:21 UTC (permalink / raw)
  To: meta; +Cc: Thiago Jung Bauermann

In the container used to build packages of the GNU Guix distribution, PID 1
runs as the same user as the test so this spawn that should fail actually
succeeds.

Fix the problem by going through different PIDs and picking one that
either doesn't exist or we aren't allowed to signal.
---
 t/spawn.t | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

Hello,

First of all, thank you for public-inbox! Mailing list archives are so much
better now for projects that use this project!

I've also been using lei and it's extremely helpful, thank you for this new
tool as well.

I packaged v1.8.0 for the GNU Guix distribution, but its build environment
causes this test to fail. This patch fixes it.

I'm not a Perl developer, so please let me know if there's anything I should
improve in the code.

diff --git a/t/spawn.t b/t/spawn.t
index 6168c1f6171c..4af215809962 100644
--- a/t/spawn.t
+++ b/t/spawn.t
@@ -24,7 +24,17 @@ SKIP: {
 	is(waitpid($pid, 0), $pid, 'waitpid succeeds on spawned process');
 	is($?, 0, 'true exited successfully');
 	pipe(my ($r, $w)) or BAIL_OUT;
-	$pid = eval { spawn(['true'], undef, { pgid => 1, 2 => $w }) };
+
+        # Find invalid PID to try to join its process group.
+        my $wrong_pgid = 1;
+        for (my $i=65534; $i >= 2; $i--) {
+            if (kill(0, $i) == 0) {
+                $wrong_pgid = $i;
+                last;
+            }
+        }
+
+	$pid = eval { spawn(['true'], undef, { pgid => $wrong_pgid, 2 => $w }) };
 	close $w;
 	my $err = do { local $/; <$r> };
 	# diag "$err ($@)";

base-commit: 930d2dc63e04c652e3b64cc7f3b3a7d377637065

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-06-11  3:23 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-10  3:21 [PATCH] t/spawn: Find invalid PID to try to join its process group Thiago Jung Bauermann
2022-06-10  9:55 ` Eric Wong
2022-06-10 15:13   ` Thiago Jung Bauermann
2022-06-10 15:39     ` [PATCH v2] " Thiago Jung Bauermann
2022-06-11  0:36       ` Eric Wong
2022-06-11  3:22         ` Thiago Jung Bauermann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).