aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpracticalswift <practicalswift@users.noreply.github.com>2017-08-28 09:20:50 +0200
committerpracticalswift <practicalswift@users.noreply.github.com>2017-08-28 09:20:50 +0200
commit55509f1a11003837714071d05ea878b340757a76 (patch)
treef383c41d3a9564ff7bae1a86d7aa1b3f42b86c21
parent3f726c99f819f97f2ab21b94d34c6b3129cd883a (diff)
downloadbitcoin-55509f1a11003837714071d05ea878b340757a76.tar.xz
Document assumptions that are being made to avoid division by zero
-rw-r--r--src/policy/fees.cpp1
-rw-r--r--src/qt/coincontroldialog.cpp1
-rw-r--r--src/wallet/wallet.cpp1
3 files changed, 3 insertions, 0 deletions
diff --git a/src/policy/fees.cpp b/src/policy/fees.cpp
index b9476407cf..5c92a0eb41 100644
--- a/src/policy/fees.cpp
+++ b/src/policy/fees.cpp
@@ -503,6 +503,7 @@ void TxConfirmStats::removeTx(unsigned int entryHeight, unsigned int nBestSeenHe
}
}
if (!inBlock && (unsigned int)blocksAgo >= scale) { // Only counts as a failure if not confirmed for entire period
+ assert(scale != 0);
unsigned int periodsAgo = blocksAgo / scale;
for (size_t i = 0; i < periodsAgo && i < failAvg.size(); i++) {
failAvg[i][bucketindex]++;
diff --git a/src/qt/coincontroldialog.cpp b/src/qt/coincontroldialog.cpp
index f3ee0fbe39..0225dd3cd6 100644
--- a/src/qt/coincontroldialog.cpp
+++ b/src/qt/coincontroldialog.cpp
@@ -581,6 +581,7 @@ void CoinControlDialog::updateLabels(WalletModel *model, QDialog* dialog)
QString toolTipDust = tr("This label turns red if any recipient receives an amount smaller than the current dust threshold.");
// how many satoshis the estimated fee can vary per byte we guess wrong
+ assert(nBytes != 0);
double dFeeVary = (double)nPayFee / nBytes;
QString toolTip4 = tr("Can vary +/- %1 satoshi(s) per input.").arg(dFeeVary);
diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp
index 291bcc7a20..6d94154da8 100644
--- a/src/wallet/wallet.cpp
+++ b/src/wallet/wallet.cpp
@@ -2741,6 +2741,7 @@ bool CWallet::CreateTransaction(const std::vector<CRecipient>& vecSend, CWalletT
if (recipient.fSubtractFeeFromAmount)
{
+ assert(nSubtractFeeFromAmount != 0);
txout.nValue -= nFeeRet / nSubtractFeeFromAmount; // Subtract fee equally from each selected recipient
if (fFirst) // first receiver pays the remainder not divisible by output count