From: Raphael Hertzog Date: Mon, 10 Dec 2007 10:06:44 +0000 (+0100) Subject: Dpkg::Shlibs::SymbolFile::merge_symbols() bugfix with deprecated symbols X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=261d067696bd54c87108c32957226bf9fbfcf35a;p=dpkg Dpkg::Shlibs::SymbolFile::merge_symbols() bugfix with deprecated symbols Do not update the deprecated version of a symbol if it is already marked deprecated. --- diff --git a/ChangeLog b/ChangeLog index c6d459be..48754cf9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-12-10 Raphael Hertzog + + * scripts/Dpkg/Shlibs/SymbolFile.pm (merge_symbols): Do not update + the deprecated version of a a symbol if it is already marked + deprecated. + 2007-12-09 Raphael Hertzog * scripts/Dpkg/Shlibs/SymbolFile.pm (load): Pass the current diff --git a/scripts/Dpkg/Shlibs/SymbolFile.pm b/scripts/Dpkg/Shlibs/SymbolFile.pm index fcaed80b..a2cf9f2e 100644 --- a/scripts/Dpkg/Shlibs/SymbolFile.pm +++ b/scripts/Dpkg/Shlibs/SymbolFile.pm @@ -232,6 +232,9 @@ sub merge_symbols { # the symbol was introduced) foreach my $sym (keys %{$self->{objects}{$soname}{syms}}) { if (! exists $dynsyms{$sym}) { + # Do nothing if already deprecated + next if $self->{objects}{$soname}{syms}{$sym}{deprecated}; + my $info = $self->{objects}{$soname}{syms}{$sym}; if (vercmp($minver, $info->{minver}) > 0) { $self->{objects}{$soname}{syms}{$sym}{deprecated} = $minver;