]> err.no Git - dpkg/commitdiff
* Define $foo->has_lost_symbols($ref) as $ref->has_new_symbols($foo).
authorRaphael Hertzog <hertzog@debian.org>
Sun, 15 Jul 2007 10:55:09 +0000 (10:55 +0000)
committerRaphael Hertzog <hertzog@debian.org>
Sun, 15 Jul 2007 10:55:09 +0000 (10:55 +0000)
* Same for has_lost_libs.
* Fixed improper usage of File::Temp object in a non-regression test.

scripts/Dpkg/Shlibs/SymbolFile.pm
scripts/t/200_Dpkg_Shlibs.t

index 38c5fcf57cfa4b56d0e60a38b948c6c0bbc0adb7..5930c8d3504166007cf791f3af8f167a2dd4f82a 100644 (file)
@@ -201,25 +201,6 @@ sub lookup_symbol {
     return undef;
 }
 
-sub has_lost_symbols {
-    my ($self, $ref) = @_;
-    foreach my $soname (keys %{$self->{objects}}) {
-       my $mysyms = $self->{objects}{$soname}{syms};
-       next if not exists $ref->{objects}{$soname};
-       my $refsyms = $ref->{objects}{$soname}{syms};
-       foreach my $sym (grep { not $refsyms->{$_}{deprecated} }
-           keys %{$refsyms})
-       {
-           if ((not exists $mysyms->{$sym}) or
-               $mysyms->{$sym}{deprecated})
-           {
-               return 1;
-           }
-       }
-    }
-    return 0;
-}
-
 sub has_new_symbols {
     my ($self, $ref) = @_;
     foreach my $soname (keys %{$self->{objects}}) {
@@ -239,6 +220,12 @@ sub has_new_symbols {
     return 0;
 }
 
+sub has_lost_symbols {
+    my ($self, $ref) = @_;
+    return $ref->has_new_symbols($self);
+}
+
+
 sub has_new_libs {
     my ($self, $ref) = @_;
     foreach my $soname (keys %{$self->{objects}}) {
@@ -249,10 +236,7 @@ sub has_new_libs {
 
 sub has_lost_libs {
     my ($self, $ref) = @_;
-    foreach my $soname (keys %{$ref->{objects}}) {
-       return 1 if not exists $self->{objects}{$soname};
-    }
-    return 0;
+    return $ref->has_new_libs($self);
 }
 
 1;
index 9db3a4ef39932c5d4224168f0c6e42ea3f9e9293..9d1d17d0c00dcb0c2748a8d1aab9d27fa8e70ff3 100644 (file)
@@ -78,9 +78,9 @@ use File::Temp;
 
 my $save_file = new File::Temp;
 
-$sym_file->save($save_file);
+$sym_file->save($save_file->filename);
 
-$sym_file_dup->load($save_file);
+$sym_file_dup->load($save_file->filename);
 $sym_file_dup->{file} = "t/200_Dpkg_Shlibs/symbol_file.tmp";
 
 is_deeply($sym_file_dup, $sym_file, 'save -> load' );