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/branches/2.7@12765 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
jbjohnso 2012-05-17 14:03:32 +00:00
parent ced01fbac9
commit 3c0dd360f5

View File

@ -1431,7 +1431,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;
}
@ -1461,7 +1461,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'}};