diff --git a/pkgtool.pm b/pkgtool.pm index 8501ce3..39b9f99 100644 --- a/pkgtool.pm +++ b/pkgtool.pm @@ -646,6 +646,16 @@ sub read_os_patches ($$) next unless $original || $update; my $kb = $1; my $number = $kb =~ /^(\d+)/o ? $1 : $kb; + if ($installname =~ /^[^~]*KB\d[0-9a-zA-Z]+~[^~]*~[^~]*~[^~]*~(\d+(\.\d+)*)/o) { + my $version = $1; + if (defined $version && $version ne '') { + my @versionlist = split /\./, $version; + my $revnum = $versionlist[2]; + if (defined $revnum && $revnum =~ /^\d+$/o && $revnum > 1) { + $kb .= 'v'.$revnum; + } + } + } my $p = $$patches{$kb}; if (! defined $p) { $p = $$patches{$kb} = {