diff --git a/src/bignum.h b/src/bignum.h index b737cdd5695..9fea3f70fb6 100644 --- a/src/bignum.h +++ b/src/bignum.h @@ -131,7 +131,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; @@ -414,7 +416,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) diff --git a/src/main.cpp b/src/main.cpp index 9a7ff16841a..22e2260eb12 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -794,7 +794,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; diff --git a/src/qt/addressbookpage.cpp b/src/qt/addressbookpage.cpp index 02454c5af3b..2893580e5c5 100644 --- a/src/qt/addressbookpage.cpp +++ b/src/qt/addressbookpage.cpp @@ -98,6 +98,8 @@ void AddressBookPage::setModel(AddressTableModel *model) proxyModel = new QSortFilterProxyModel(this); proxyModel->setSourceModel(model); proxyModel->setDynamicSortFilter(true); + proxyModel->setSortCaseSensitivity(Qt::CaseInsensitive); + proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive); switch(tab) { case ReceivingTab: diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp index fd31d3c5fe7..a917bc3b697 100644 --- a/src/qt/bitcoingui.cpp +++ b/src/qt/bitcoingui.cpp @@ -311,6 +311,7 @@ void BitcoinGUI::setClientModel(ClientModel *clientModel) this->clientModel = clientModel; if(clientModel) { + // Replace some strings and icons, when using the testnet if(clientModel->isTestNet()) { QString title_testnet = windowTitle() + QString(" ") + tr("[testnet]"); @@ -325,6 +326,8 @@ void BitcoinGUI::setClientModel(ClientModel *clientModel) trayIcon->setToolTip(title_testnet); trayIcon->setIcon(QIcon(":/icons/toolbar_testnet")); } + + aboutAction->setIcon(QIcon(":/icons/toolbar_testnet")); } // Keep up to date with client diff --git a/src/qt/forms/addressbookpage.ui b/src/qt/forms/addressbookpage.ui index b31a9ce997f..e47eb57ff93 100644 --- a/src/qt/forms/addressbookpage.ui +++ b/src/qt/forms/addressbookpage.ui @@ -6,8 +6,8 @@ 0 0 - 627 - 347 + 760 + 380 diff --git a/src/qt/optionsmodel.cpp b/src/qt/optionsmodel.cpp index 5bba308cf21..9297e2b15a1 100644 --- a/src/qt/optionsmodel.cpp +++ b/src/qt/optionsmodel.cpp @@ -15,7 +15,7 @@ void OptionsModel::Init() { QSettings settings; - // These are QT-only settings: + // These are Qt-only settings: nDisplayUnit = settings.value("nDisplayUnit", BitcoinUnits::BTC).toInt(); bDisplayAddresses = settings.value("bDisplayAddresses", false).toBool(); fMinimizeToTray = settings.value("fMinimizeToTray", false).toBool(); diff --git a/src/qt/transactionview.cpp b/src/qt/transactionview.cpp index eaed48bfdf4..13d0b7c474e 100644 --- a/src/qt/transactionview.cpp +++ b/src/qt/transactionview.cpp @@ -158,6 +158,8 @@ void TransactionView::setModel(WalletModel *model) transactionProxyModel = new TransactionFilterProxy(this); transactionProxyModel->setSourceModel(model->getTransactionTableModel()); transactionProxyModel->setDynamicSortFilter(true); + transactionProxyModel->setSortCaseSensitivity(Qt::CaseInsensitive); + transactionProxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive); transactionProxyModel->setSortRole(Qt::EditRole); diff --git a/src/util.cpp b/src/util.cpp index 66d33485fe4..01c5799b43c 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -72,7 +72,7 @@ bool fNoListen = false; bool fLogTimestamps = false; CMedianFilter vTimeOffsets(200,0); -// 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) { @@ -88,7 +88,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(); @@ -104,7 +104,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]; @@ -1239,7 +1239,7 @@ bool SetStartOnSystemStartup(bool fAutoStart) #else // TODO: OSX startup stuff; see: -// http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPSystemStartup/Articles/CustomLogin.html +// https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPSystemStartup/Articles/CustomLogin.html bool GetStartOnSystemStartup() { return false; } bool SetStartOnSystemStartup(bool fAutoStart) { return false; }