diff options
author | Julian Andres Klode <julian.klode@canonical.com> | 2019-02-26 11:59:38 +0100 |
---|---|---|
committer | Julian Andres Klode <julian.klode@canonical.com> | 2019-02-26 16:31:20 +0100 |
commit | e217a3a425ba72e8b6ce395e1ecd411fbe58e916 (patch) | |
tree | 0743ef4a95ed77580cb30c16d87256e0396614e9 /apt-pkg | |
parent | a65b59abbb1772bcee23c6374cad884ca9a6f769 (diff) |
pkgSrcRecords::Parser: Fold Files2() into Files()
This is possible now with the API break. Cleaner code, woohoo.
Diffstat (limited to 'apt-pkg')
-rw-r--r-- | apt-pkg/deb/debsrcrecords.cc | 41 | ||||
-rw-r--r-- | apt-pkg/deb/debsrcrecords.h | 1 | ||||
-rw-r--r-- | apt-pkg/sourcelist.cc | 4 | ||||
-rw-r--r-- | apt-pkg/srcrecords.cc | 30 | ||||
-rw-r--r-- | apt-pkg/srcrecords.h | 8 |
5 files changed, 5 insertions, 79 deletions
diff --git a/apt-pkg/deb/debsrcrecords.cc b/apt-pkg/deb/debsrcrecords.cc index 9656fcac3..0b6cf1ff0 100644 --- a/apt-pkg/deb/debsrcrecords.cc +++ b/apt-pkg/deb/debsrcrecords.cc @@ -158,30 +158,7 @@ bool debSrcRecordParser::BuildDepends(std::vector<pkgSrcRecords::Parser::BuildDe // --------------------------------------------------------------------- /* This parses the list of files and returns it, each file is required to have a complete source package */ -bool debSrcRecordParser::Files(std::vector<pkgSrcRecords::File> &F) -{ - std::vector<pkgSrcRecords::File2> F2; - if (Files2(F2) == false) - return false; - for (std::vector<pkgSrcRecords::File2>::const_iterator f2 = F2.begin(); f2 != F2.end(); ++f2) - { - pkgSrcRecords::File2 f; -#if __GNUC__ >= 4 - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdeprecated-declarations" -#endif - f.MD5Hash = f2->MD5Hash; - f.Size = f2->Size; -#if __GNUC__ >= 4 - #pragma GCC diagnostic pop -#endif - f.Path = f2->Path; - f.Type = f2->Type; - F.push_back(f); - } - return true; -} -bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List) +bool debSrcRecordParser::Files(std::vector<pkgSrcRecords::File> &List) { List.clear(); @@ -231,7 +208,7 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List) path = Base + path; // look if we have a record for this file already - std::vector<pkgSrcRecords::File2>::iterator file = List.begin(); + std::vector<pkgSrcRecords::File>::iterator file = List.begin(); for (; file != List.end(); ++file) if (file->Path == path) break; @@ -239,12 +216,6 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List) // we have it already, store the new hash and be done if (file != List.end()) { - if (checksumField == "Files") - { - APT_IGNORE_DEPRECATED_PUSH - file->MD5Hash = hash; - APT_IGNORE_DEPRECATED_POP - } // an error here indicates that we have two different hashes for the same file if (file->Hashes.push_back(hashString) == false) return _error->Error("Error parsing checksum in %s of source package %s", checksumField.c_str(), Package().c_str()); @@ -252,18 +223,12 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List) } // we haven't seen this file yet - pkgSrcRecords::File2 F; + pkgSrcRecords::File F; F.Path = path; F.FileSize = strtoull(size.c_str(), NULL, 10); F.Hashes.push_back(hashString); F.Hashes.FileSize(F.FileSize); - APT_IGNORE_DEPRECATED_PUSH - F.Size = F.FileSize; - if (checksumField == "Files") - F.MD5Hash = hash; - APT_IGNORE_DEPRECATED_POP - // Try to guess what sort of file it is we are getting. string::size_type Pos = F.Path.length()-1; while (1) diff --git a/apt-pkg/deb/debsrcrecords.h b/apt-pkg/deb/debsrcrecords.h index 45617f641..b572d3427 100644 --- a/apt-pkg/deb/debsrcrecords.h +++ b/apt-pkg/deb/debsrcrecords.h @@ -53,7 +53,6 @@ class APT_HIDDEN debSrcRecordParser : public pkgSrcRecords::Parser return std::string(Start,Stop); }; virtual bool Files(std::vector<pkgSrcRecords::File> &F) APT_OVERRIDE; - bool Files2(std::vector<pkgSrcRecords::File2> &F); debSrcRecordParser(std::string const &File,pkgIndexFile const *Index); virtual ~debSrcRecordParser(); diff --git a/apt-pkg/sourcelist.cc b/apt-pkg/sourcelist.cc index a3d693151..5be8fbc0c 100644 --- a/apt-pkg/sourcelist.cc +++ b/apt-pkg/sourcelist.cc @@ -571,8 +571,8 @@ bool pkgSourceList::AddVolatileFile(std::string const &File, std::vector<std::st else if (ext == "changes") { debDscRecordParser changes(File, nullptr); - std::vector<pkgSrcRecords::File2> fileslst; - if (changes.Files2(fileslst) == false || fileslst.empty()) + std::vector<pkgSrcRecords::File> fileslst; + if (changes.Files(fileslst) == false || fileslst.empty()) return false; auto const basedir = flNotFile(File); for (auto && file: fileslst) diff --git a/apt-pkg/srcrecords.cc b/apt-pkg/srcrecords.cc index 9d515ae75..a830a28f0 100644 --- a/apt-pkg/srcrecords.cc +++ b/apt-pkg/srcrecords.cc @@ -146,36 +146,6 @@ const char *pkgSrcRecords::Parser::BuildDepType(unsigned char const &Type) return fields[Type]; } /*}}}*/ -bool pkgSrcRecords::Parser::Files2(std::vector<pkgSrcRecords::File2> &F2)/*{{{*/ -{ - debSrcRecordParser * const deb = dynamic_cast<debSrcRecordParser*>(this); - if (deb != NULL) - return deb->Files2(F2); - - std::vector<pkgSrcRecords::File> F; - if (Files(F) == false) - return false; - for (std::vector<pkgSrcRecords::File>::const_iterator f = F.begin(); f != F.end(); ++f) - { - pkgSrcRecords::File2 f2; -#if __GNUC__ >= 4 - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wdeprecated-declarations" -#endif - f2.MD5Hash = f->MD5Hash; - f2.Size = f->Size; - f2.Hashes.push_back(HashString("MD5Sum", f->MD5Hash)); - f2.FileSize = f->Size; -#if __GNUC__ >= 4 - #pragma GCC diagnostic pop -#endif - f2.Path = f->Path; - f2.Type = f->Type; - F2.push_back(f2); - } - return true; -} - /*}}}*/ pkgSrcRecords::Parser::Parser(const pkgIndexFile *Index) : d(NULL), iIndex(Index) {} diff --git a/apt-pkg/srcrecords.h b/apt-pkg/srcrecords.h index 8c52f5683..77d648fa8 100644 --- a/apt-pkg/srcrecords.h +++ b/apt-pkg/srcrecords.h @@ -29,21 +29,14 @@ class pkgSrcRecords { public: -APT_IGNORE_DEPRECATED_PUSH // Describes a single file struct File { - APT_DEPRECATED_MSG("Use Hashes member instead of hardcoded hash algorithm") std::string MD5Hash; - APT_DEPRECATED_MSG("Use FileSize member instead") unsigned long Size; std::string Path; std::string Type; - }; - struct File2 : public File - { unsigned long long FileSize; HashStringList Hashes; }; -APT_IGNORE_DEPRECATED_POP // Abstract parser for each source record class Parser @@ -86,7 +79,6 @@ APT_IGNORE_DEPRECATED_POP static const char *BuildDepType(unsigned char const &Type) APT_PURE; virtual bool Files(std::vector<pkgSrcRecords::File> &F) = 0; - bool Files2(std::vector<pkgSrcRecords::File2> &F); explicit Parser(const pkgIndexFile *Index); virtual ~Parser(); |