From 09335626d357013ade9042b27926913802894953 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 22 Oct 2016 10:52:59 -0300 Subject: [PATCH] test --- src/komodo_interest.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/komodo_interest.h b/src/komodo_interest.h index 83d238b39..d1811a04e 100644 --- a/src/komodo_interest.h +++ b/src/komodo_interest.h @@ -1,6 +1,7 @@ #define KOMODO_INTEREST ((uint64_t)0.05 * COIN) +#define dstr(x) ((double)(x)/COIN) uint64_t komodo_interest(uint64_t nValue,uint32_t nLockTime,uint32_t tiptime) { @@ -8,8 +9,12 @@ uint64_t komodo_interest(uint64_t nValue,uint32_t nLockTime,uint32_t tiptime) if ( nLockTime >= LOCKTIME_THRESHOLD && tiptime != 0 && nLockTime < tiptime && nValue >= COIN ) { minutes = (tiptime - nLockTime) / 60; - interest = (nValue * KOMODO_INTEREST) / (((uint64_t)365 * 100000000 * 24 * 60) / minutes); - fprintf(stderr,"komodo_interest %lld %.8f nLockTime.%u tiptime.%u minutes.%d interest %lld %.8f\n",(long long)nValue,(double)nValue/100000000.,nLockTime,tiptime,minutes,(long long)interest,(double)interest/100000000); + numerator = (nValue * KOMODO_INTEREST); + denominator = (((uint64_t)365 * 24 * 60) / minutes); + if ( denominator == 0 ) + denominator = 1; // max KOMODO_INTEREST per transfer, do it at least annually! + interest = numerator / denominator; + fprintf(stderr,"komodo_interest %lld %.8f nLockTime.%u tiptime.%u minutes.%d interest %lld %.8f (%llu / %llu)\n",(long long)nValue,dstr(nValue),nLockTime,tiptime,minutes,(long long)interest,dstr(interest),(long long)numerator,(long long)denominator); } return(interest * 0); }