summaryrefslogtreecommitdiff
path: root/selftest/target/Samba.pm
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2014-09-04 12:55:53 +0200
committerAndreas Schneider <asn@cryptomilk.org>2014-09-04 17:09:17 +0200
commit6d2f56dbaf84203b351f33179cc3feaf557e0683 (patch)
tree3396cbb3bb525f54fd21c1f7eedb8dfb372e64b6 /selftest/target/Samba.pm
parent0b4a3b76111411e8969932a3da4ffab989e0da4c (diff)
downloadsamba-6d2f56dbaf84203b351f33179cc3feaf557e0683.tar.gz
selftest: Fix selftest where pid is used uninitialized.
On my system this gets evaluated to 0 so in the end we detect samba to be running cause $childpid is set to 0. BUG: https://bugzilla.samba.org/show_bug.cgi?id=10793 Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Thu Sep 4 17:09:17 CEST 2014 on sn-devel-104
Diffstat (limited to 'selftest/target/Samba.pm')
-rw-r--r--selftest/target/Samba.pm7
1 files changed, 6 insertions, 1 deletions
diff --git a/selftest/target/Samba.pm b/selftest/target/Samba.pm
index d33c1d68672..2bd90ae6f99 100644
--- a/selftest/target/Samba.pm
+++ b/selftest/target/Samba.pm
@@ -190,7 +190,12 @@ sub get_interface($)
sub cleanup_child($$)
{
my ($pid, $name) = @_;
- my $childpid = waitpid($pid, WNOHANG);
+ my $childpid = -1;
+
+ if (defined($pid)) {
+ $childpid = waitpid($pid, WNOHANG);
+ }
+
if ($childpid == 0) {
} elsif ($childpid < 0) {
printf STDERR "%s child process %d isn't here any more\n",