diff --git a/install/calculate b/install/calculate index ea64f7b..4646530 100755 --- a/install/calculate +++ b/install/calculate @@ -1573,13 +1573,17 @@ sub checksystem{ if(/$find($mask)$/){ chomp; my $path = $_; + my $filetype = $1; if(!$data{linux}){$data{linux} = $path; next;} #выделим номера сравниваемых версий $path=~m/$ver/; my $change = $1; $data{linux}=~m/$ver/; my $cur = $1; - if(number_ver($cur) < number_ver($change)){$data{linux} = $path;} + $data{linux}=~m/$find($mask)$/; + my $curfiletype = $1; + if(number_ver($cur) < number_ver($change) || ( number_ver($cur) == number_ver($change) + && index($mask,$curfiletype) > index($mask,$filetype))){$data{linux} = $path;} } } if($data{linux}){ #обрежем путь