Explorar el Código

dpkg-scanpackages: Use Dpkg::Versions instead of dpkg --compare-versions

Guillem Jover hace 18 años
padre
commit
24430528aa
Se han modificado 3 ficheros con 9 adiciones y 3 borrados
  1. 5 0
      ChangeLog
  2. 1 0
      debian/changelog
  3. 3 3
      scripts/dpkg-scanpackages.pl

+ 5 - 0
ChangeLog

@@ -1,3 +1,8 @@
+2007-11-29  Guillem Jover  <guillem@debian.org>
+
+	* scripts/dpkg-scanpackages.pl: Use Dpkg::Version.
+	(vercmp): Use compare_versions instead of 'dpkg --compare-versions'.
+
 2007-11-29  Guillem Jover  <guillem@debian.org>
 
 	* scripts/dpkg-scanpackages.pl: Use Dpkg::ErrorHandling. Use error

+ 1 - 0
debian/changelog

@@ -19,6 +19,7 @@ dpkg (1.14.12) UNRELEASED; urgency=low
   * Move extern declarations to header files and stop defining them as extern.
   * Unify parsing of Section and Priority in dpkg-gencontrol with Homepage.
   * Change dpkg-scanpackages to use the Dpkg::ErrorHandling module.
+  * Change dpkg-scanpackages to use the Dpkg::Versions module.
 
  -- Guillem Jover <guillem@debian.org>  Sat, 24 Nov 2007 07:38:13 +0200
 

+ 3 - 3
scripts/dpkg-scanpackages.pl

@@ -9,6 +9,7 @@ use Dpkg;
 use Dpkg::Gettext;
 use Dpkg::ErrorHandling qw(error syserr subprocerr);
 use Dpkg::Deps qw(@pkg_dep_fields);
+use Dpkg::Version qw(compare_versions);
 
 textdomain("dpkg-dev");
 
@@ -144,9 +145,8 @@ my %vercache;
 sub vercmp {
      my ($a,$b)=@_;
      return $vercache{$a}{$b} if exists $vercache{$a}{$b};
-     system('dpkg','--compare-versions',$a,'le',$b);
-     $vercache{$a}{$b}=$?;
-     return $?;
+     $vercache{$a}{$b} = compare_versions($a, 'gt', $b);
+     return $vercache{$a}{$b};
 }
 
 my $find_h = new IO::Handle;