]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/indexfile.cc
move apts cmdline helper type into -private
[apt.git] / apt-pkg / indexfile.cc
index c3c0e74ae27bf5ef4db2b079db1f4d2aa3f62cdd..34ebcb2b8bf8703d8f8731e722488319de687170 100644 (file)
 #include <apt-pkg/srcrecords.h>
 #include <apt-pkg/strutl.h>
 #include <apt-pkg/progress.h>
 #include <apt-pkg/srcrecords.h>
 #include <apt-pkg/strutl.h>
 #include <apt-pkg/progress.h>
+#include <apt-pkg/deblistparser.h>
 #include <apt-pkg/macros.h>
 
 #include <apt-pkg/macros.h>
 
-#include <apt-pkg/deblistparser.h>
+#include <apt-pkg/debindexfile.h>
 
 #include <sys/stat.h>
 
 
 #include <sys/stat.h>
 
@@ -66,8 +67,11 @@ pkgIndexFile::pkgIndexFile(bool const Trusted) :                     /*{{{*/
 }
                                                                        /*}}}*/
 // IndexFile::ArchiveInfo - Stub                                       /*{{{*/
 }
                                                                        /*}}}*/
 // IndexFile::ArchiveInfo - Stub                                       /*{{{*/
-std::string pkgIndexFile::ArchiveInfo(pkgCache::VerIterator const &/*Ver*/) const
+std::string pkgIndexFile::ArchiveInfo(pkgCache::VerIterator const &Ver) const
 {
 {
+   debDebPkgFileIndex const * const debfile = dynamic_cast<debDebPkgFileIndex const*>(this);
+   if (debfile != nullptr)
+      return debfile->ArchiveInfo_impl(Ver);
    return std::string();
 }
                                                                        /*}}}*/
    return std::string();
 }
                                                                        /*}}}*/
@@ -148,6 +152,7 @@ std::string IndexTarget::Option(OptionKeys const EnumKey) const             /*{{{*/
       APT_CASE(DEFAULTENABLED);
       APT_CASE(COMPRESSIONTYPES);
       APT_CASE(SOURCESENTRY);
       APT_CASE(DEFAULTENABLED);
       APT_CASE(COMPRESSIONTYPES);
       APT_CASE(SOURCESENTRY);
+      APT_CASE(BY_HASH);
 #undef APT_CASE
       case FILENAME: return _config->FindDir("Dir::State::lists") + URItoFileName(URI);
       case EXISTING_FILENAME:
 #undef APT_CASE
       case FILENAME: return _config->FindDir("Dir::State::lists") + URItoFileName(URI);
       case EXISTING_FILENAME:
@@ -342,6 +347,7 @@ bool pkgDebianIndexFile::Merge(pkgCacheGenerator &Gen,OpProgress * const Prog)
    _error->PushToStack();
    std::unique_ptr<pkgCacheListParser> Parser(CreateListParser(Pkg));
    bool const newError = _error->PendingError();
    _error->PushToStack();
    std::unique_ptr<pkgCacheListParser> Parser(CreateListParser(Pkg));
    bool const newError = _error->PendingError();
+   _error->MergeWithStack();
    if (newError == false && Parser == nullptr)
       return true;
    if (Parser == NULL)
    if (newError == false && Parser == nullptr)
       return true;
    if (Parser == NULL)