diff options
Diffstat (limited to 'dev-libs/libFuzzer')
-rw-r--r-- | dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch | 16 | ||||
-rw-r--r-- | dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild | 4 |
2 files changed, 20 insertions, 0 deletions
diff --git a/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch b/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch new file mode 100644 index 000000000000..1257686d1c39 --- /dev/null +++ b/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch @@ -0,0 +1,16 @@ +this code has been rewritten in newer versions so this patch can be thrown +away when we upgrade. + +https://bugs.gentoo.org/612656 + +--- a/FuzzerLoop.cpp ++++ b/FuzzerLoop.cpp +@@ -366,7 +366,7 @@ + double Lambda = 2.0 * log(2.0) / static_cast<double>(MaxCorpusLen); + std::exponential_distribution<> Dist(Lambda); + std::vector<double> Sizes; +- size_t TruncatePoints = std::max(1ul, TruncateMaxRuns / Corpus.size()); ++ size_t TruncatePoints = std::max((size_t)1, TruncateMaxRuns / Corpus.size()); + Sizes.reserve(TruncatePoints); + for (size_t I = 0; I < TruncatePoints; ++I) { + Sizes.push_back(Dist(MD.GetRand().Get_mt19937()) + 1); diff --git a/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild b/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild index d9e77c26a7ac..43b99e894a91 100644 --- a/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild +++ b/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild @@ -19,6 +19,10 @@ IUSE="" S_ROOT="${WORKDIR}/${MY_P}.src" S="${S_ROOT}/lib/Fuzzer" +PATCHES=( + "${FILESDIR}"/${P}-32-bit.patch #612656 +) + src_prepare() { cmake-utils_src_prepare sed -i '/CMAKE_CXX_FLAGS/d' CMakeLists.txt || die |