From b150f074f7ad2baad3179510b5f716cc1ad79bb6 Mon Sep 17 00:00:00 2001 From: Aditya Kulkarni Date: Thu, 15 Nov 2018 16:36:48 -0800 Subject: [PATCH] Address @diara 's comments about turnstile. --- src/main.cpp | 5 ++++- src/precompiled.h | 1 + src/turnstile.cpp | 5 +++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 76fcd14..b685f8e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -18,7 +18,10 @@ int main(int argc, char *argv[]) qApp->setFont(QFont("Ubuntu", 11, QFont::Normal, false)); #endif - std::srand(static_cast(std::time(nullptr))); + // QRandomGenerator generates a secure random number, which we use to seed. + unsigned int seed = QRandomGenerator::securelySeeded().generate(); + std::srand(seed); + Settings::init(); Settings::getInstance()->setExecName(argv[0]); diff --git a/src/precompiled.h b/src/precompiled.h index 916fb43..bff6110 100644 --- a/src/precompiled.h +++ b/src/precompiled.h @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include diff --git a/src/turnstile.cpp b/src/turnstile.cpp index bf512e1..9ce13d5 100644 --- a/src/turnstile.cpp +++ b/src/turnstile.cpp @@ -183,8 +183,9 @@ void Turnstile::fillAmounts(QList& amounts, double amount, int count) { return; } - // Get a random amount off the amount (between half and full) and call recursively. - // Multiply by hundred, because we'll operate on 0.01 ZEC minimum. We'll divide by 100 later + // Get a random amount off the total amount and call recursively. + // Multiply by hundred, because we'll operate on 0.01 ZEC minimum. We'll divide by 100 later on + // in this function. double curAmount = std::rand() % (int)std::floor(amount * 100); // Try to round it off