mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-21 15:50:07 +01:00
Merge branch '0.4.x' into 0.5.x
This commit is contained in:
@@ -130,7 +130,9 @@ public:
|
||||
|
||||
if (sn < (int64)0)
|
||||
{
|
||||
n = -sn;
|
||||
// Since the minimum signed integer cannot be represented as positive so long as its type is signed, and it's not well-defined what happens if you make it unsigned before negating it, we instead increment the negative integer by 1, convert it, then increment the (now positive) unsigned integer by 1 to compensate
|
||||
n = -(sn + 1);
|
||||
++n;
|
||||
fNegative = true;
|
||||
} else {
|
||||
n = sn;
|
||||
@@ -413,7 +415,7 @@ public:
|
||||
CBigNum& operator>>=(unsigned int shift)
|
||||
{
|
||||
// Note: BN_rshift segfaults on 64-bit if 2^shift is greater than the number
|
||||
// if built on ubuntu 9.04 or 9.10, probably depends on version of openssl
|
||||
// if built on ubuntu 9.04 or 9.10, probably depends on version of OpenSSL
|
||||
CBigNum a = 1;
|
||||
a <<= shift;
|
||||
if (BN_cmp(&a, this) > 0)
|
||||
|
||||
@@ -697,7 +697,7 @@ int64 static GetBlockValue(int nHeight, int64 nFees)
|
||||
{
|
||||
int64 nSubsidy = 50 * COIN;
|
||||
|
||||
// Subsidy is cut in half every 4 years
|
||||
// Subsidy is cut in half every 210000 blocks, which will occur approximately every 4 years
|
||||
nSubsidy >>= (nHeight / 210000);
|
||||
|
||||
return nSubsidy + nFees;
|
||||
|
||||
@@ -54,7 +54,7 @@ extern "C" void tss_cleanup_implemented() { }
|
||||
|
||||
|
||||
|
||||
// Init openssl library multithreading support
|
||||
// Init OpenSSL library multithreading support
|
||||
static boost::interprocess::interprocess_mutex** ppmutexOpenSSL;
|
||||
void locking_callback(int mode, int i, const char* file, int line)
|
||||
{
|
||||
@@ -70,7 +70,7 @@ class CInit
|
||||
public:
|
||||
CInit()
|
||||
{
|
||||
// Init openssl library multithreading support
|
||||
// Init OpenSSL library multithreading support
|
||||
ppmutexOpenSSL = (boost::interprocess::interprocess_mutex**)OPENSSL_malloc(CRYPTO_num_locks() * sizeof(boost::interprocess::interprocess_mutex*));
|
||||
for (int i = 0; i < CRYPTO_num_locks(); i++)
|
||||
ppmutexOpenSSL[i] = new boost::interprocess::interprocess_mutex();
|
||||
@@ -86,7 +86,7 @@ public:
|
||||
}
|
||||
~CInit()
|
||||
{
|
||||
// Shutdown openssl library multithreading support
|
||||
// Shutdown OpenSSL library multithreading support
|
||||
CRYPTO_set_locking_callback(NULL);
|
||||
for (int i = 0; i < CRYPTO_num_locks(); i++)
|
||||
delete ppmutexOpenSSL[i];
|
||||
|
||||
Reference in New Issue
Block a user