diff -Nur smeserver-affa-3.2.2.3.old/root/sbin/affa smeserver-affa-3.2.2.3/root/sbin/affa --- smeserver-affa-3.2.2.3.old/root/sbin/affa 2017-04-10 17:44:55.073000764 +0200 +++ smeserver-affa-3.2.2.3/root/sbin/affa 2017-04-09 17:55:24.000000000 +0200 @@ -10,7 +10,7 @@ # This is free software, and you are welcome to redistribute it # under certain conditions; type 'affa --license' for details. #---------------------------------------------------------------------- -my $VERSION='3.2.2.3-6'; +my $VERSION='3.2.2.3-8'; #---------------------------------------------------------------------- use strict; @@ -2922,7 +2922,6 @@ ####################################################################################################################################### ####################### debut des modifs faites dans la dernière ligne de la commande @cmd précédente # -# # ajout de $job{'remoteHostName'} eq 'localhost' ? ":/$k" : # ######################### fin des modifs @@ -3258,6 +3257,24 @@ $ts[$i] =~ /(..)(..)/; $ts[$i] = $1*60+$2; } + +### fix bug 10196 +my @am; +my @pm; + +while (@ts) { + my $t=shift @ts; + if ($t <= 720) { + push(@am, $t); + } else { + push(@pm, $t); + } +} +push (@ts,@pm); +push (@ts,@am); + +## end fix bug 10196 + # Kill at my $killat=-1; if( $job{'killAt'} ) { @@ -3279,11 +3296,29 @@ $out{$jn}.="K"; } elsif( $resumeat >= $i && $resumeat < $i+$res ) { $out{$jn}.="R"; - } elsif( $t >= $i && $t < $i+$res ) { - $out{$jn}.="S"; - while( @ts && $t < $i+$res ) { - $t=shift @ts; - } +####### next line modified: fix bug 10196 +# } elsif( $t >= $i && $t < $i+$res ) { + } elsif( $t && $t >= $i && $t < $i+$res ) { + if( $t >= $i && $t < $i+$res ) { + $out{$jn}.="S"; + + +###### 3 next lines: fix bug 10196 +# while( @ts && $t < $i+$res ) { +# $t=shift @ts; +# } +##### replaced through: + while( @ts && $t < 720 && $t < $i+$res ) { + $t=shift @ts; + } + + + while( @ts && $t >= 720 && $t < $i+$res ) { + $t=shift @ts; + } + } +## end fix bug 10196 + } elsif( $i >= $s1 && $i< $e1 or $i >= $s2 && $i< $e2 ) { $out{$jn}.="="; } elsif( $dedup && ($i >= $ds1 && $i< $de1 or $i >= $ds2 && $i< $de2) ) {