Age | Commit message (Collapse) | Author |
|
Shutdown() if no GUI is used and calls uiInterface.QueueShutdown() if a GUI is used / all direct uiInterface.QueueShutdown() calls are replaced with Shutdown() - this ensures a clean GUI shutdown, even when catching a SIGTERM and allows the BitcoinGUI destructor to get called (which fixes a tray-icon issue and keeps the tray-icon until Bitcoin-Qt exits)
|
|
|
|
|
|
|
|
|
|
This introduces internal types:
* CKeyID: reference (hash160) of a key
* CScriptID: reference (hash160) of a script
* CTxDestination: a boost::variant of the former two
CBitcoinAddress is retrofitted to be a Base58 encoding of a
CTxDestination. This allows all internal code to only use the
internal types, and only have RPC and GUI depend on the base58 code.
Furthermore, the header dependencies are a lot saner now. base58.h is
at the top (right below rpc and gui) instead of at the bottom. For the
rest: wallet -> script -> keystore -> key. Only keystore still requires
a forward declaration of CScript. Solving that would require splitting
script into two layers.
|
|
|
|
|
|
Update Header Licenses
|
|
|
|
- Signals now go directly from the core to WalletModel/ClientModel.
- WalletModel subscribes to signals on CWallet: Prepares for multi-wallet support, by no longer assuming an implicit global wallet.
- Gets rid of noui.cpp, the few lines that were left are merged into init.cpp
- Rename wxXXX message flags to MF_XXX, to make them UI indifferent.
- ThreadSafeMessageBox no longer returns the value `4` which was never used, converted to void.
|
|
Shared code for wallet lock help and check
|
|
|
|
strings to use "Qt" (and not qt or QT) / update initialisation of notificator to use qApp->applicationName() instead of a static string
|
|
I originally created a pull to replace the "COPYING" in crypter.cpp and
crypter.h, but it turned out that COPYING was actually the correct
file.
|
|
RPC 'getblockcount' should be used instead.
|
|
Corrected grammar. As per Principle Of Least Surprise.
|
|
|
|
|
|
Only reported when using -flto.
|
|
|
|
Multithreaded JSON-RPC with HTTP 1.1 Keep-Alive support
|
|
|
|
|
|
Change internal HTTP JSON-RPC server from single-threaded to
thread-per-connection model. The IP filter list is applied prior to starting
the thread, which then processes the RPC.
A mutex covers the entire RPC operation, because not all RPC operations are
thread-safe.
[minor modifications by jgarzik, to make change upstream-ready]
|
|
|
|
This is an Object specifying how to decompose specific elements.
Currently supported:
- "tx": "no", "hash", "hex", "obj"
- "script": "no", "hex", "asm"
|
|
|
|
gettransaction RPC for non-wallet transactions
|
|
Add UI RPC console / debug window
|
|
|
|
Previously trying to create a multisig address that required less than
one signature would output something like the following:
"wrong number of keys(got 1, need at least 0)"
|
|
listsinceblock: rpc param blockid -> blockhash
|
|
|
|
This is more consistent with the rest of the labeling seen
by the user when accessing the rpc commands.
|
|
At these code sites, it is preferable to cast rather than change
a variable's type.
|
|
|
|
|
|
|
|
Works for wallet transactions, memory-pool transaction and block chain
transactions.
Available for all:
* txid
* version
* locktime
* size
* coinbase/inputs/outputs
* confirmations
Available only for wallet transactions:
* amount
* fee
* details
* blockindex
Available for wallet transactions and block chain transactions:
* blockhash
* time
|
|
|
|
This commit removes the dependency of serialize.h on PROTOCOL_VERSION,
and makes this parameter required instead of implicit. This is much saner,
as it makes the places where changing a version number can have an
influence obvious.
|
|
In addition to standard code separation, this change opens the door
to fixing several include inter-dependencies.
|
|
|
|
foo.size() typically returns an unsigned integral type; make loop variables
match those types' signedness.
|
|
Noticed when sign-comparison warnings were enabled.
|
|
and nPooledTx
|
|
|
|
Bug fix listtransactions from/count handling.
|
|
Where possible, use boost::filesystem::path instead of std::string or
char* for filenames. This avoids a lot of manual string tinkering, in
favor of path::operator/.
GetDataDir is also reworked significantly, it now only keeps two cached
directory names (the network-specific data dir, and the root data dir),
which are decided through a parameter instead of pre-initialized global
variables.
Finally, remove the "upgrade from 0.1.5" case where a debug.log in the
current directory has to be removed.
|