aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/assets-attribution.txt4
-rw-r--r--doc/release-process.txt17
-rw-r--r--src/init.cpp11
-rw-r--r--src/main.cpp12
-rw-r--r--src/net.cpp24
-rw-r--r--src/qt/addressbookpage.cpp48
-rw-r--r--src/qt/addressbookpage.h8
-rw-r--r--src/qt/bitcoingui.h1
-rw-r--r--src/qt/clientmodel.cpp4
-rw-r--r--src/qt/forms/addressbookpage.ui9
-rw-r--r--src/qt/paymentserver.h1
-rw-r--r--src/qt/res/icons/bitcoin.icnsbin99044 -> 919273 bytes
-rw-r--r--src/qt/res/icons/bitcoin.svg58
-rw-r--r--src/qt/rpcconsole.cpp12
-rw-r--r--src/util.cpp18
-rw-r--r--src/util.h6
-rw-r--r--src/walletdb.cpp8
17 files changed, 146 insertions, 95 deletions
diff --git a/doc/assets-attribution.txt b/doc/assets-attribution.txt
index 0693d535c3..05218e51b7 100644
--- a/doc/assets-attribution.txt
+++ b/doc/assets-attribution.txt
@@ -55,3 +55,7 @@ Icon: src/qt/res/icons/debugwindow.png
Designer: Vignoni David
Site: http://www.oxygen-icons.org/
License: Oxygen icon theme is dual licensed. You may copy it under the Creative Common Attribution-ShareAlike 3.0 License or the GNU Library General Public License.
+
+Icon: src/qt/res/icons/bitcoin.icns, src/qt/res/icons/bitcoin.svg
+Designer: Jonas Schnelli (original bitcoin logo from Bitboy)
+License: MIT \ No newline at end of file
diff --git a/doc/release-process.txt b/doc/release-process.txt
index 166f2aaf3c..29271ad224 100644
--- a/doc/release-process.txt
+++ b/doc/release-process.txt
@@ -1,25 +1,26 @@
-* update translations (ping tcatm on IRC for now)
+* update translations (ping wumpus, Diapolo or tcatm on IRC)
+ * see https://github.com/bitcoin/bitcoin/blob/master/doc/translation_process.md#syncing-with-transifex
* update (commit) version in sources
bitcoin-qt.pro
- src/clientversion.h (change CLIENT_VERSION_IS_RELEASE to true)
- share/setup.nsi
- doc/README*
contrib/verifysfbinaries/verify.sh
+ doc/README*
+ share/setup.nsi
+ src/clientversion.h (change CLIENT_VERSION_IS_RELEASE to true)
* tag version in git
- git tag -a v0.5.1
+ git tag -a v0.8.0
-* write release notes. git shortlog helps a lot:
+* write release notes. git shortlog helps a lot, for example:
- git shortlog --no-merges v0.5.0..
+ git shortlog --no-merges v0.7.2..v0.8.0
* perform gitian builds
* From a directory containing the bitcoin source, gitian-builder and gitian.sigs
export SIGNER=(your gitian key, ie bluematt, sipa, etc)
- export VERSION=0.5.1
+ export VERSION=0.8.0
cd ./gitian-builder
* Fetch and build inputs: (first time, or when dependency versions change)
diff --git a/src/init.cpp b/src/init.cpp
index ee69d2207f..66272e8421 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -217,16 +217,16 @@ bool AppInit(int argc, char* argv[])
PrintExceptionContinue(NULL, "AppInit()");
}
if (!fRet) {
- if (detectShutdownThread)
- detectShutdownThread->interrupt();
- threadGroup.interrupt_all();
+ if (detectShutdownThread)
+ detectShutdownThread->interrupt();
+ threadGroup.interrupt_all();
}
if (detectShutdownThread)
{
detectShutdownThread->join();
delete detectShutdownThread;
- detectShutdownThread = NULL;
+ detectShutdownThread = NULL;
}
Shutdown();
@@ -376,7 +376,6 @@ struct CImportingNow
}
};
-
void ThreadImport(std::vector<boost::filesystem::path> vImportFiles)
{
RenameThread("bitcoin-loadblk");
@@ -633,7 +632,6 @@ bool AppInit2(boost::thread_group& threadGroup)
// ********************************************************* Step 6: network initialization
int nSocksVersion = GetArg("-socks", 5);
-
if (nSocksVersion != 4 && nSocksVersion != 5)
return InitError(strprintf(_("Unknown -socks proxy version requested: %i"), nSocksVersion));
@@ -733,6 +731,7 @@ bool AppInit2(boost::thread_group& threadGroup)
fReindex = GetBoolArg("-reindex");
+ // Todo: Check if needed, because in step 5 we do the same
if (!bitdb.Open(GetDataDir()))
{
string msg = strprintf(_("Error initializing database environment %s!"
diff --git a/src/main.cpp b/src/main.cpp
index fb8f1b3b1f..7f408c4d1b 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -2655,12 +2655,12 @@ bool VerifyDB() {
CBlockIndex *pindex = pindexState;
while (pindex != pindexBest) {
boost::this_thread::interruption_point();
- pindex = pindex->pnext;
- CBlock block;
- if (!block.ReadFromDisk(pindex))
- return error("VerifyDB() : *** block.ReadFromDisk failed at %d, hash=%s", pindex->nHeight, pindex->GetBlockHash().ToString().c_str());
- if (!block.ConnectBlock(state, pindex, coins))
- return error("VerifyDB() : *** found unconnectable block at %d, hash=%s", pindex->nHeight, pindex->GetBlockHash().ToString().c_str());
+ pindex = pindex->pnext;
+ CBlock block;
+ if (!block.ReadFromDisk(pindex))
+ return error("VerifyDB() : *** block.ReadFromDisk failed at %d, hash=%s", pindex->nHeight, pindex->GetBlockHash().ToString().c_str());
+ if (!block.ConnectBlock(state, pindex, coins))
+ return error("VerifyDB() : *** found unconnectable block at %d, hash=%s", pindex->nHeight, pindex->GetBlockHash().ToString().c_str());
}
}
diff --git a/src/net.cpp b/src/net.cpp
index 5f8b5ba32b..0defa96e40 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -344,13 +344,13 @@ bool GetMyExternalIP(CNetAddr& ipRet)
for (int nLookup = 0; nLookup <= 1; nLookup++)
for (int nHost = 1; nHost <= 2; nHost++)
{
- // We should be phasing out our use of sites like these. If we need
+ // We should be phasing out our use of sites like these. If we need
// replacements, we should ask for volunteers to put this simple
// php file on their web server that prints the client IP:
// <?php echo $_SERVER["REMOTE_ADDR"]; ?>
if (nHost == 1)
{
- addrConnect = CService("91.198.22.70",80); // checkip.dyndns.org
+ addrConnect = CService("91.198.22.70", 80); // checkip.dyndns.org
if (nLookup == 1)
{
@@ -424,12 +424,10 @@ void AddressCurrentlyConnected(const CService& addr)
CNode* FindNode(const CNetAddr& ip)
{
- {
- LOCK(cs_vNodes);
- BOOST_FOREACH(CNode* pnode, vNodes)
- if ((CNetAddr)pnode->addr == ip)
- return (pnode);
- }
+ LOCK(cs_vNodes);
+ BOOST_FOREACH(CNode* pnode, vNodes)
+ if ((CNetAddr)pnode->addr == ip)
+ return (pnode);
return NULL;
}
@@ -444,12 +442,10 @@ CNode* FindNode(std::string addrName)
CNode* FindNode(const CService& addr)
{
- {
- LOCK(cs_vNodes);
- BOOST_FOREACH(CNode* pnode, vNodes)
- if ((CService)pnode->addr == addr)
- return (pnode);
- }
+ LOCK(cs_vNodes);
+ BOOST_FOREACH(CNode* pnode, vNodes)
+ if ((CService)pnode->addr == addr)
+ return (pnode);
return NULL;
}
diff --git a/src/qt/addressbookpage.cpp b/src/qt/addressbookpage.cpp
index 9e35e51bbf..cc3d27d01d 100644
--- a/src/qt/addressbookpage.cpp
+++ b/src/qt/addressbookpage.cpp
@@ -51,25 +51,26 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) :
switch(tab)
{
case SendingTab:
- ui->labelExplanation->setVisible(false);
- ui->deleteButton->setVisible(true);
+ ui->labelExplanation->setText(tr("These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins."));
+ ui->deleteAddress->setVisible(true);
ui->signMessage->setVisible(false);
break;
case ReceivingTab:
- ui->deleteButton->setVisible(false);
+ ui->labelExplanation->setText(tr("These are your Bitcoin addresses for receiving payments. You may want to give a different one to each sender so you can keep track of who is paying you."));
+ ui->deleteAddress->setVisible(false);
ui->signMessage->setVisible(true);
break;
}
// Context menu actions
- QAction *copyAddressAction = new QAction(ui->copyToClipboard->text(), this);
+ QAction *copyAddressAction = new QAction(ui->copyAddress->text(), this);
QAction *copyLabelAction = new QAction(tr("Copy &Label"), this);
QAction *editAction = new QAction(tr("&Edit"), this);
QAction *sendCoinsAction = new QAction(tr("Send &Coins"), this);
QAction *showQRCodeAction = new QAction(ui->showQRCode->text(), this);
QAction *signMessageAction = new QAction(ui->signMessage->text(), this);
QAction *verifyMessageAction = new QAction(ui->verifyMessage->text(), this);
- deleteAction = new QAction(ui->deleteButton->text(), this);
+ deleteAction = new QAction(ui->deleteAddress->text(), this);
// Build context menu
contextMenu = new QMenu();
@@ -90,11 +91,11 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) :
contextMenu->addAction(verifyMessageAction);
// Connect signals for context menu actions
- connect(copyAddressAction, SIGNAL(triggered()), this, SLOT(on_copyToClipboard_clicked()));
+ connect(copyAddressAction, SIGNAL(triggered()), this, SLOT(on_copyAddress_clicked()));
connect(copyLabelAction, SIGNAL(triggered()), this, SLOT(onCopyLabelAction()));
connect(editAction, SIGNAL(triggered()), this, SLOT(onEditAction()));
- connect(deleteAction, SIGNAL(triggered()), this, SLOT(on_deleteButton_clicked()));
- connect(sendCoinsAction, SIGNAL(triggered()), this, SLOT(onSendCoins_clicked()));
+ connect(deleteAction, SIGNAL(triggered()), this, SLOT(on_deleteAddress_clicked()));
+ connect(sendCoinsAction, SIGNAL(triggered()), this, SLOT(onSendCoinsAction()));
connect(showQRCodeAction, SIGNAL(triggered()), this, SLOT(on_showQRCode_clicked()));
connect(signMessageAction, SIGNAL(triggered()), this, SLOT(on_signMessage_clicked()));
connect(verifyMessageAction, SIGNAL(triggered()), this, SLOT(on_verifyMessage_clicked()));
@@ -138,17 +139,14 @@ void AddressBookPage::setModel(AddressTableModel *model)
ui->tableView->sortByColumn(0, Qt::AscendingOrder);
// Set column widths
- ui->tableView->horizontalHeader()->resizeSection(
- AddressTableModel::Address, 320);
- ui->tableView->horizontalHeader()->setResizeMode(
- AddressTableModel::Label, QHeaderView::Stretch);
+ ui->tableView->horizontalHeader()->setResizeMode(AddressTableModel::Label, QHeaderView::Stretch);
+ ui->tableView->horizontalHeader()->setResizeMode(AddressTableModel::Address, QHeaderView::ResizeToContents);
connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)),
this, SLOT(selectionChanged()));
// Select row for newly created address
- connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)),
- this, SLOT(selectNewAddress(QModelIndex,int,int)));
+ connect(model, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(selectNewAddress(QModelIndex,int,int)));
selectionChanged();
}
@@ -158,7 +156,7 @@ void AddressBookPage::setOptionsModel(OptionsModel *optionsModel)
this->optionsModel = optionsModel;
}
-void AddressBookPage::on_copyToClipboard_clicked()
+void AddressBookPage::on_copyAddress_clicked()
{
GUIUtil::copyEntryData(ui->tableView, AddressTableModel::Address);
}
@@ -210,7 +208,7 @@ void AddressBookPage::on_verifyMessage_clicked()
}
}
-void AddressBookPage::onSendCoins_clicked()
+void AddressBookPage::onSendCoinsAction()
{
QTableView *table = ui->tableView;
QModelIndexList indexes = table->selectionModel()->selectedRows(AddressTableModel::Address);
@@ -222,7 +220,7 @@ void AddressBookPage::onSendCoins_clicked()
}
}
-void AddressBookPage::on_newAddressButton_clicked()
+void AddressBookPage::on_newAddress_clicked()
{
if(!model)
return;
@@ -238,7 +236,7 @@ void AddressBookPage::on_newAddressButton_clicked()
}
}
-void AddressBookPage::on_deleteButton_clicked()
+void AddressBookPage::on_deleteAddress_clicked()
{
QTableView *table = ui->tableView;
if(!table->selectionModel())
@@ -264,8 +262,8 @@ void AddressBookPage::selectionChanged()
{
case SendingTab:
// In sending tab, allow deletion of selection
- ui->deleteButton->setEnabled(true);
- ui->deleteButton->setVisible(true);
+ ui->deleteAddress->setEnabled(true);
+ ui->deleteAddress->setVisible(true);
deleteAction->setEnabled(true);
ui->signMessage->setEnabled(false);
ui->signMessage->setVisible(false);
@@ -274,8 +272,8 @@ void AddressBookPage::selectionChanged()
break;
case ReceivingTab:
// Deleting receiving addresses, however, is not allowed
- ui->deleteButton->setEnabled(false);
- ui->deleteButton->setVisible(false);
+ ui->deleteAddress->setEnabled(false);
+ ui->deleteAddress->setVisible(false);
deleteAction->setEnabled(false);
ui->signMessage->setEnabled(true);
ui->signMessage->setVisible(true);
@@ -283,14 +281,14 @@ void AddressBookPage::selectionChanged()
ui->verifyMessage->setVisible(false);
break;
}
- ui->copyToClipboard->setEnabled(true);
+ ui->copyAddress->setEnabled(true);
ui->showQRCode->setEnabled(true);
}
else
{
- ui->deleteButton->setEnabled(false);
+ ui->deleteAddress->setEnabled(false);
ui->showQRCode->setEnabled(false);
- ui->copyToClipboard->setEnabled(false);
+ ui->copyAddress->setEnabled(false);
ui->signMessage->setEnabled(false);
ui->verifyMessage->setEnabled(false);
}
diff --git a/src/qt/addressbookpage.h b/src/qt/addressbookpage.h
index c6653a5e8a..0631781685 100644
--- a/src/qt/addressbookpage.h
+++ b/src/qt/addressbookpage.h
@@ -59,17 +59,17 @@ private:
private slots:
/** Delete currently selected address entry */
- void on_deleteButton_clicked();
+ void on_deleteAddress_clicked();
/** Create a new address for receiving coins and / or add a new address book entry */
- void on_newAddressButton_clicked();
+ void on_newAddress_clicked();
/** Copy address of currently selected address entry to clipboard */
- void on_copyToClipboard_clicked();
+ void on_copyAddress_clicked();
/** Open the sign message tab in the Sign/Verify Message dialog with currently selected address */
void on_signMessage_clicked();
/** Open the verify message tab in the Sign/Verify Message dialog with currently selected address */
void on_verifyMessage_clicked();
/** Open send coins dialog for currently selected address (no button) */
- void onSendCoins_clicked();
+ void onSendCoinsAction();
/** Generate a QR Code from the currently selected address */
void on_showQRCode_clicked();
/** Copy label of currently selected address entry to clipboard (no button) */
diff --git a/src/qt/bitcoingui.h b/src/qt/bitcoingui.h
index aba81cb3bc..c59cf3c5e5 100644
--- a/src/qt/bitcoingui.h
+++ b/src/qt/bitcoingui.h
@@ -61,6 +61,7 @@ public:
void removeAllWallets();
/** Used by WalletView to allow access to needed QActions */
+ // Todo: Use Qt signals for these
QAction * getOverviewAction() { return overviewAction; }
QAction * getHistoryAction() { return historyAction; }
QAction * getAddressBookAction() { return addressBookAction; }
diff --git a/src/qt/clientmodel.cpp b/src/qt/clientmodel.cpp
index ae66924181..863176aa1b 100644
--- a/src/qt/clientmodel.cpp
+++ b/src/qt/clientmodel.cpp
@@ -52,8 +52,10 @@ QDateTime ClientModel::getLastBlockDate() const
{
if (pindexBest)
return QDateTime::fromTime_t(pindexBest->GetBlockTime());
- else
+ else if(!isTestNet())
return QDateTime::fromTime_t(1231006505); // Genesis block's time
+ else
+ return QDateTime::fromTime_t(1296688602); // Genesis block's time (testnet)
}
double ClientModel::getVerificationProgress() const
diff --git a/src/qt/forms/addressbookpage.ui b/src/qt/forms/addressbookpage.ui
index 71ab75ca3f..3cf307384a 100644
--- a/src/qt/forms/addressbookpage.ui
+++ b/src/qt/forms/addressbookpage.ui
@@ -16,9 +16,6 @@
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="labelExplanation">
- <property name="text">
- <string>These are your Bitcoin addresses for receiving payments. You may want to give a different one to each sender so you can keep track of who is paying you.</string>
- </property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
@@ -58,7 +55,7 @@
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
- <widget class="QPushButton" name="newAddressButton">
+ <widget class="QPushButton" name="newAddress">
<property name="toolTip">
<string>Create a new address</string>
</property>
@@ -72,7 +69,7 @@
</widget>
</item>
<item>
- <widget class="QPushButton" name="copyToClipboard">
+ <widget class="QPushButton" name="copyAddress">
<property name="toolTip">
<string>Copy the currently selected address to the system clipboard</string>
</property>
@@ -125,7 +122,7 @@
</widget>
</item>
<item>
- <widget class="QPushButton" name="deleteButton">
+ <widget class="QPushButton" name="deleteAddress">
<property name="toolTip">
<string>Delete the currently selected address from the list</string>
</property>
diff --git a/src/qt/paymentserver.h b/src/qt/paymentserver.h
index cfc48afb38..1f2fdd4664 100644
--- a/src/qt/paymentserver.h
+++ b/src/qt/paymentserver.h
@@ -37,6 +37,7 @@ class QLocalServer;
class PaymentServer : public QObject
{
Q_OBJECT
+
private:
bool saveURIs;
QLocalServer* uriServer;
diff --git a/src/qt/res/icons/bitcoin.icns b/src/qt/res/icons/bitcoin.icns
index 3c757080aa..54d02d34dd 100644
--- a/src/qt/res/icons/bitcoin.icns
+++ b/src/qt/res/icons/bitcoin.icns
Binary files differ
diff --git a/src/qt/res/icons/bitcoin.svg b/src/qt/res/icons/bitcoin.svg
new file mode 100644
index 0000000000..14cf0c5e11
--- /dev/null
+++ b/src/qt/res/icons/bitcoin.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!-- Designer: Jonas Schnelli
+ License: MIT
+-->
+
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1"
+ id="svg2" sodipodi:docname="bitcoin-logo-noshadow.svg" inkscape:version="0.48.2 r9819" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="1024px" height="1024px"
+ viewBox="-34 -34 580 580" enable-background="new 0 0 1024 1024" xml:space="preserve">
+
+ <!-- nice shadow with alpha 0.35 -->
+ <filter id="dropShadowAlpha">
+ <feColorMatrix result="matrixOut" in="SourceAlpha" type="saturate"
+ values="0.1" />
+ <feGaussianBlur in="matrixOut" result="blur-out" stdDeviation="6" />
+ <feColorMatrix in="blur-out" result="color-out" type="matrix"
+ values="0 0 0 0 0
+ 0 0 0 0 0
+ 0 0 0 0 0
+ 0 0 0 0.35 0"/>
+ <feBlend in="SourceGraphic" in2="color-out" mode="normal" />
+ </filter>
+
+ <g>
+ <!-- white background circle for making B not transparent but still keep inner shadows -->
+ <circle cx="255" cy="255" r="200" stroke-width="2" fill="white"/>
+
+ <radialGradient id="innerBtop" cx="277.4905" cy="196.4412" r="34.3969" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#F9AA4B"/>
+ <stop offset="1" style="stop-color:#F7931A"/>
+ </radialGradient>
+ <path fill="url(#innerBtop)" filter="url(#dropShadowAlpha)" d="M254.647,174.6l-13.983,56.08c15.855,3.951,64.735,20.071,72.656-11.656
+ C321.568,185.928,270.503,178.552,254.647,174.6z"/>
+
+ <radialGradient id="innerBbottom" cx="261.9153" cy="284.5671" r="39.8381" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#F9AA4B"/>
+ <stop offset="1" style="stop-color:#F7931A"/>
+ </radialGradient>
+ <path fill="url(#innerBbottom)" filter="url(#dropShadowAlpha)" d="M233.608,258.984l-15.425,61.832c19.04,4.729,77.769,23.584,86.448-11.296
+ C313.703,273.144,252.647,263.736,233.608,258.984z"/>
+
+ <radialGradient id="coinShape" cx="256.0276" cy="256.0027" r="255.9878" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#F9AA4B"/>
+ <stop offset="1" style="stop-color:#F7931A"/>
+ </radialGradient>
+ <path fill="url(#coinShape)" filter="url(#dropShadowAlpha)" d="M317.871,7.656c-137.12-34.192-276.024,49.28-310.2,186.44
+ c-34.208,137.136,49.256,276.048,186.36,310.24c137.16,34.199,276.063-49.265,310.256-186.408
+ C538.479,180.776,455.023,41.848,317.871,7.656z M368.807,219.528c-3.688,24.936-17.512,37.008-35.864,41.24
+ c25.2,13.12,38.024,33.239,25.809,68.12c-15.16,43.319-51.176,46.976-99.072,37.912l-11.624,46.584l-28.088-7l11.472-45.96
+ c-7.279-1.809-14.72-3.729-22.384-5.809l-11.512,46.177l-28.056-7l11.624-46.673c-6.561-1.68-13.225-3.464-20.024-5.168
+ l-36.552-9.111l13.943-32.152c0,0,20.696,5.504,20.416,5.096c7.952,1.969,11.48-3.216,12.872-6.672l18.368-73.64l0.048-0.2
+ l13.104-52.568c0.344-5.968-1.712-13.496-13.088-16.336c0.439-0.296-20.4-5.072-20.4-5.072l7.472-30l38.736,9.673l-0.032,0.144
+ c5.824,1.448,11.824,2.824,17.937,4.216L245.423,89.2l28.072,7l-11.28,45.224c7.536,1.721,15.12,3.456,22.504,5.297l11.2-44.929
+ l28.088,7l-11.504,46.145C347.967,167.152,373.904,185.464,368.807,219.528z"/>
+ </g>
+</svg>
diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp
index c9ce374346..50f22b877a 100644
--- a/src/qt/rpcconsole.cpp
+++ b/src/qt/rpcconsole.cpp
@@ -38,7 +38,6 @@ class RPCExecutor : public QObject
Q_OBJECT
public slots:
- void start();
void request(const QString &command);
signals:
@@ -47,11 +46,6 @@ signals:
#include "rpcconsole.moc"
-void RPCExecutor::start()
-{
- // Nothing to do
-}
-
/**
* Split shell command line into a list of arguments. Aims to emulate \c bash and friends.
*
@@ -187,6 +181,7 @@ void RPCExecutor::request(const QString &command)
RPCConsole::RPCConsole(QWidget *parent) :
QDialog(parent),
ui(new Ui::RPCConsole),
+ clientModel(0),
historyPtr(0)
{
ui->setupUi(this);
@@ -384,16 +379,15 @@ void RPCConsole::browseHistory(int offset)
void RPCConsole::startExecutor()
{
- QThread* thread = new QThread;
+ QThread *thread = new QThread;
RPCExecutor *executor = new RPCExecutor();
executor->moveToThread(thread);
- // Notify executor when thread started (in executor thread)
- connect(thread, SIGNAL(started()), executor, SLOT(start()));
// Replies from executor object must go to this object
connect(executor, SIGNAL(reply(int,QString)), this, SLOT(message(int,QString)));
// Requests from this object must go to executor
connect(this, SIGNAL(cmdRequest(QString)), executor, SLOT(request(QString)));
+
// On stopExecutor signal
// - queue executor for deletion (in execution thread)
// - quit the Qt event loop in the execution thread
diff --git a/src/util.cpp b/src/util.cpp
index 9f5e08a148..64f8e12983 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -1072,7 +1072,7 @@ const boost::filesystem::path &GetDataDir(bool fNetSpecific)
fs::create_directory(path);
- cachedPath[fNetSpecific]=true;
+ cachedPath[fNetSpecific] = true;
return path;
}
@@ -1336,14 +1336,14 @@ void seed_insecure_rand(bool fDeterministic)
insecure_rand_Rz = insecure_rand_Rw = 11;
} else {
uint32_t tmp;
- do{
- RAND_bytes((unsigned char*)&tmp,4);
- }while(tmp==0 || tmp==0x9068ffffU);
- insecure_rand_Rz=tmp;
- do{
- RAND_bytes((unsigned char*)&tmp,4);
- }while(tmp==0 || tmp==0x464fffffU);
- insecure_rand_Rw=tmp;
+ do {
+ RAND_bytes((unsigned char*)&tmp, 4);
+ } while(tmp == 0 || tmp == 0x9068ffffU);
+ insecure_rand_Rz = tmp;
+ do {
+ RAND_bytes((unsigned char*)&tmp, 4);
+ } while(tmp == 0 || tmp == 0x464fffffU);
+ insecure_rand_Rw = tmp;
}
}
diff --git a/src/util.h b/src/util.h
index 4d7c81be0b..0641c4be7c 100644
--- a/src/util.h
+++ b/src/util.h
@@ -419,9 +419,9 @@ extern uint32_t insecure_rand_Rz;
extern uint32_t insecure_rand_Rw;
static inline uint32_t insecure_rand(void)
{
- insecure_rand_Rz=36969*(insecure_rand_Rz&65535)+(insecure_rand_Rz>>16);
- insecure_rand_Rw=18000*(insecure_rand_Rw&65535)+(insecure_rand_Rw>>16);
- return (insecure_rand_Rw<<16)+insecure_rand_Rz;
+ insecure_rand_Rz = 36969 * (insecure_rand_Rz & 65535) + (insecure_rand_Rz >> 16);
+ insecure_rand_Rw = 18000 * (insecure_rand_Rw & 65535) + (insecure_rand_Rw >> 16);
+ return (insecure_rand_Rw << 16) + insecure_rand_Rz;
}
/**
diff --git a/src/walletdb.cpp b/src/walletdb.cpp
index abaf5a0fd1..841553ea6a 100644
--- a/src/walletdb.cpp
+++ b/src/walletdb.cpp
@@ -622,11 +622,11 @@ bool CWalletDB::Recover(CDBEnv& dbenv, std::string filename, bool fOnlyKeys)
bool fSuccess = allOK;
Db* pdbCopy = new Db(&dbenv.dbenv, 0);
- int ret = pdbCopy->open(NULL, // Txn pointer
+ int ret = pdbCopy->open(NULL, // Txn pointer
filename.c_str(), // Filename
- "main", // Logical db name
- DB_BTREE, // Database type
- DB_CREATE, // Flags
+ "main", // Logical db name
+ DB_BTREE, // Database type
+ DB_CREATE, // Flags
0);
if (ret > 0)
{