From d812245dd5ac9268ef060a243ac978074504ecca Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 13 Dec 2017 12:28:22 +0100 Subject: clearing object via constructor instead of memset Reported-By: gcc -Wclass-memaccess Gbp-Dch: Ignore --- apt-private/private-search.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'apt-private') diff --git a/apt-private/private-search.cc b/apt-private/private-search.cc index b850339f9..7ec1915a8 100644 --- a/apt-private/private-search.cc +++ b/apt-private/private-search.cc @@ -164,6 +164,7 @@ struct ExDescFile pkgCache::DescFile *Df; pkgCache::VerIterator V; map_id_t ID; + ExDescFile() : Df(nullptr), ID(0) {} }; static bool Search(CommandLine &CmdL) { @@ -203,7 +204,6 @@ static bool Search(CommandLine &CmdL) size_t const descCount = Cache->HeaderP->GroupCount + 1; ExDescFile *DFList = new ExDescFile[descCount]; - memset(DFList,0,sizeof(*DFList) * descCount); bool *PatternMatch = new bool[descCount * NumPatterns]; memset(PatternMatch,false,sizeof(*PatternMatch) * descCount * NumPatterns); -- 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-private/private-search.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'apt-private') diff --git a/apt-private/private-search.cc b/apt-private/private-search.cc index 7ec1915a8..eac7abd05 100644 --- a/apt-private/private-search.cc +++ b/apt-private/private-search.cc @@ -133,8 +133,8 @@ static bool FullTextSearch(CommandLine &CmdL) /*{{{*/ // LocalitySort - Sort a version list by package file locality /*{{{*/ static int LocalityCompare(const void * const a, const void * const b) { - pkgCache::VerFile const * const A = *(pkgCache::VerFile const * const * const)a; - pkgCache::VerFile const * const B = *(pkgCache::VerFile const * const * const)b; + pkgCache::VerFile const * const A = *static_cast(a); + pkgCache::VerFile const * const B = *static_cast(b); if (A == 0 && B == 0) return 0; -- cgit v1.2.3 From 1adcf56bec7d2127d83aa423916639740fe8e586 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Wed, 13 Dec 2017 21:39:16 +0100 Subject: avoid some useless casts reported by -Wuseless-cast The casts are useless, but the reports show some where we can actually improve the code by replacing them with better alternatives like converting whatever int type into a string instead of casting to a specific one which might in the future be too small. Reported-By: gcc -Wuseless-cast --- apt-private/private-source.cc | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'apt-private') diff --git a/apt-private/private-source.cc b/apt-private/private-source.cc index 47610cd80..32651cfdb 100644 --- a/apt-private/private-source.cc +++ b/apt-private/private-source.cc @@ -208,12 +208,7 @@ static pkgSrcRecords::Parser *FindSrc(const char *Name, // or RelTag if (Cache.BuildPolicy() == false) return nullptr; - pkgPolicy * Policy = dynamic_cast(Cache.GetPolicy()); - if (Policy == nullptr) - { - _error->Fatal("Implementation error: dynamic up-casting policy engine failed in FindSrc!"); - return nullptr; - } + pkgPolicy * const Policy = Cache.GetPolicy(); pkgCache::VerIterator const Ver = Policy->GetCandidateVer(Pkg); if (Ver.end() == false) { -- cgit v1.2.3