Fix problem where a memory address could inadvertently end up being an argument to sleep by

git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@12764 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
jbjohnso 2012-05-17 14:03:04 +00:00
parent f6e8687f47
commit 22eff119c4

View File

@ -1432,7 +1432,7 @@ sub dispatch_request {
}
if ($onlyone and not ($_->{'_xcatdest'} and xCAT::Utils->thishostisnot($_->{'_xcatdest'}))) {
$SIG{CHLD}='DEFAULT';
if ($_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; }
if ($_->{'_xcatdelay'} and not ref $_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; }
${"xCAT_plugin::".$modname."::"}{process_request}->($_,$dispatch_cb,\&do_request);
return;
}
@ -1462,7 +1462,7 @@ sub dispatch_request {
$dispatch_parentfd = $parfd;
my @prexcatdests=();
my @xcatdests=();
if ($_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; }
if ($_->{'_xcatdelay'} and not ref $_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; }
if (ref($_->{'_xcatdest'}) eq 'ARRAY') { #If array, consider it an 'anycast' operation, broadcast done through dupe
#requests, or an alternative join '&' maybe?
@prexcatdests=@{$_->{'_xcatdest'}};