]> git.saurik.com Git - apt.git/commitdiff
show in madison command again also source packages (LP: #614589)
authorDavid Kalnischkies <kalnischkies@gmail.com>
Wed, 25 Aug 2010 15:48:52 +0000 (17:48 +0200)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Wed, 25 Aug 2010 15:48:52 +0000 (17:48 +0200)
cmdline/apt-cache.cc
debian/changelog

index 6813d297865ac4f4323491e19b46cf5949ede678..74a4f69c2256b4d27c2ce6fe08746caf67f20183 100644 (file)
@@ -1664,10 +1664,11 @@ bool Madison(CommandLine &CmdL)
       _error->Discard();
 
    APT::CacheSetHelper helper(true, GlobalError::NOTICE);
-   APT::PackageSet pkgset = APT::PackageSet::FromCommandLine(CacheFile, CmdL.FileList + 1, helper);
-   for (APT::PackageSet::const_iterator Pkg = pkgset.begin(); Pkg != pkgset.end(); ++Pkg)
+   for (const char **I = CmdL.FileList + 1; *I != 0; I++)
    {
-      if (Pkg.end() == false)
+      _error->PushToStack();
+      APT::PackageSet pkgset = APT::PackageSet::FromString(CacheFile, *I, helper);
+      for (APT::PackageSet::const_iterator Pkg = pkgset.begin(); Pkg != pkgset.end(); ++Pkg)
       {
          for (pkgCache::VerIterator V = Pkg.VersionList(); V.end() == false; V++)
          {
@@ -1698,16 +1699,21 @@ bool Madison(CommandLine &CmdL)
          }
       }
 
-      
       SrcRecs.Restart();
       pkgSrcRecords::Parser *SrcParser;
-      while ((SrcParser = SrcRecs.Find(Pkg.Name(),false)) != 0)
+      bool foundSomething = false;
+      while ((SrcParser = SrcRecs.Find(*I, false)) != 0)
       {
+         foundSomething = true;
          // Maybe support Release info here too eventually
          cout << setw(10) << SrcParser->Package() << " | "
               << setw(10) << SrcParser->Version() << " | "
               << SrcParser->Index().Describe(true) << endl;
       }
+      if (foundSomething == true)
+        _error->RevertToStack();
+      else
+        _error->MergeWithStack();
    }
 
    return true;
index b76880b0f114657d87718546754149716ea11465..41ec1b2a15cebad8fd71ee564fa685a0694b1900 100644 (file)
@@ -13,7 +13,10 @@ apt (0.8.1) UNRELEASED; urgency=low
   * Fix spelling error in cmdline/apt-get.cc. Thanks to Osamu Aoki
     Closes: #594211
 
- -- Christian Perrier <bubulle@debian.org>  Wed, 25 Aug 2010 08:35:49 +0200
+  [ David Kalnischkies ]
+  * show in madison command again also source packages (LP: #614589)
+
+ -- David Kalnischkies <kalnischkies@gmail.com>  Wed, 25 Aug 2010 17:46:48 +0200
 
 apt (0.8.0) unstable; urgency=low