From 594ee572949bee6abb36d956af1b9c8a7d100803 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 13 Dec 2017 12:20:10 +0100 Subject: fix over-calculating dpkg commandline length Mostly harmless as it just means that apt thinks that the dpkg commandline it is building is slightly longer than it actually is and we have various ways of avoiding generating very long lines nowadays, but calculating the right value can't hurt. Reported-By: gcc -Wmultistatement-macros --- apt-pkg/deb/dpkgpm.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'apt-pkg/deb') diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index 4724f6e1c..c6d0a50f1 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -1758,7 +1758,9 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress) case Item::Purge: ADDARGC("--force-depends"); if (std::any_of(I, J, ItemIsEssential)) + { ADDARGC("--force-remove-essential"); + } ADDARGC("--remove"); break; -- cgit v1.2.3 From 5d5ca1aac76448cdfd16972090d246c44671dce6 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 13 Dec 2017 12:51:26 +0100 Subject: deprecate the single-line deprecation ignoring macro gcc has problems understanding this construct and additionally thinks it would produce multiple lines and stuff, so to keep using it isn't really worth it for the few instances we have: We can just write the long form there which works better. Reported-By: gcc Gbp-Dch: Ignore --- apt-pkg/deb/debmetaindex.cc | 6 ++++-- apt-pkg/deb/debsrcrecords.cc | 6 +++++- 2 files changed, 9 insertions(+), 3 deletions(-) (limited to 'apt-pkg/deb') diff --git a/apt-pkg/deb/debmetaindex.cc b/apt-pkg/deb/debmetaindex.cc index c2579e12d..ad27e2dcd 100644 --- a/apt-pkg/deb/debmetaindex.cc +++ b/apt-pkg/deb/debmetaindex.cc @@ -459,8 +459,10 @@ bool debReleaseIndex::Load(std::string const &Filename, std::string * const Erro Sum->MetaKeyFilename = Name; Sum->Size = Size; Sum->Hashes.FileSize(Size); - APT_IGNORE_DEPRECATED(Sum->Hash = hs;) - Entries[Name] = Sum; + APT_IGNORE_DEPRECATED_PUSH + Sum->Hash = hs; + APT_IGNORE_DEPRECATED_POP + Entries[Name] = Sum; } Entries[Name]->Hashes.push_back(hs); FoundHashSum = true; diff --git a/apt-pkg/deb/debsrcrecords.cc b/apt-pkg/deb/debsrcrecords.cc index 1cabfe281..7fd206ed6 100644 --- a/apt-pkg/deb/debsrcrecords.cc +++ b/apt-pkg/deb/debsrcrecords.cc @@ -241,7 +241,11 @@ bool debSrcRecordParser::Files2(std::vector &List) if (file != List.end()) { if (checksumField == "Files") - APT_IGNORE_DEPRECATED(file->MD5Hash = hash;) + { + 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()); -- cgit v1.2.3 From 957381a0d26ec11a172ebfc64f892d1b31f0c193 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 13 Dec 2017 13:26:38 +0100 Subject: convert various c-style casts to C++-style gcc was warning about ignored type qualifiers for all of them due to the last 'const', so dropping that and converting to static_cast in the process removes the here harmless warning to avoid hidden real issues in them later on. Reported-By: gcc Gbp-Dch: Ignore --- apt-pkg/deb/deblistparser.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'apt-pkg/deb') diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc index 378988a1c..241313ff2 100644 --- a/apt-pkg/deb/deblistparser.cc +++ b/apt-pkg/deb/deblistparser.cc @@ -170,15 +170,15 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver) Ver->SourceVerStr = Ver->VerStr; if (Section.Find(pkgTagSection::Key::Source,Start,Stop) == true) { - const char * const Space = (const char * const) memchr(Start, ' ', Stop - Start); + const char * const Space = static_cast(memchr(Start, ' ', Stop - Start)); pkgCache::VerIterator V; if (Space != NULL) { - const char * const Open = (const char * const) memchr(Space, '(', Stop - Space); + const char * const Open = static_cast(memchr(Space, '(', Stop - Space)); if (likely(Open != NULL)) { - const char * const Close = (const char * const) memchr(Open, ')', Stop - Open); + const char * const Close = static_cast(memchr(Open, ')', Stop - Open)); if (likely(Close != NULL)) { APT::StringView const version(Open + 1, (Close - Open) - 1); -- cgit v1.2.3