Age | Commit message (Collapse) | Author |
|
- No longer invalidates selection model, thus retains selection on address book changes
- Fixes selection of new address when added
|
|
- 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.
|
|
Gets rid of `MainFrameRepaint` in favor of specific update functions that tell the UI exactly what changed.
This improves the efficiency of various handlers. Also fixes problems with mined transactions not showing up until restart.
The following notifications were added:
- `NotifyBlocksChanged`: Block chain changed
- `NotifyKeyStoreStatusChanged`: Wallet status (encrypted, locked) changed.
- `NotifyAddressBookChanged`: Address book entry changed.
- `NotifyTransactionChanged`: Wallet transaction added, removed or updated.
- `NotifyNumConnectionsChanged`: Number of connections changed.
- `NotifyAlertChanged`: New, updated or cancelled alert. As this finally makes it possible for the UI to know when a new alert arrived, it can be shown as OS notification.
These notifications could also be useful for RPC clients. However, currently, they are ignored in bitcoind (in noui.cpp).
Also brings back polling with timer for numBlocks in ClientModel. This value updates so frequently during initial download that the number of signals clogs the UI thread and causes heavy CPU usage. And after initial block download, the value changes so rarely that a delay of half a second until the UI updates is unnoticable.
|
|
translation updates / string updates
|
|
GUI: add an icon for Debug logfile -> Open in the RPC console
|
|
Get rid of snprintf (except one) with fixed buffers, shorten code
|
|
|
|
|
|
|
|
|
|
Cleans up and organizes several scattered functions and variables related to
the BDB env. Class CDBInit() existed to provide a
guaranteed-via-C++-destructor cleanup of the db environment.
A formal CDBEnv class provides all of this inside a single wrapper.
|
|
If Reorganize() fails, then its caller, CBlock::SetBestChain(),
will call TxnAbort().
Redundant TxnAbort() calls are harmless. The second will return an
error return value, with no other side effects. TxnAbort() return
values are generally never checked. The impact is nil.
|
|
boost::algorithm::istarts_with() / do not call ipcInit() on Mac and Windows as this is unneeded currently
|
|
Default to DB_TXN_WRITE_NOSYNC for all transactional operations
|
|
Shared code for wallet lock help and check
|
|
make CheckDiskSpace() use 50 * 1024 * 1024 Bytes
|
|
change strings to Bitcoin (uppercase), where it is used as a noun and up...
|
|
Replace debug window icon with LGPL-licensed one (fixes #1348)
|
|
|
|
* This is safer than DB_TXN_NOSYNC, and does not appear to impact
performance.
* Applying this to the dbenv is necessary to avoid many fdatasync(2)
calls on db 5.x
* We carefully and thoroughly flush databases upon shutdown and
other important events already.
|
|
|
|
The best log rotation method formerly available was to configure
logrotate with the copytruncate option. As described in the logrotate
documentation, "there is a very small time slice between copying the
file and truncating it, so some logging data might be lost".
By sending SIGHUP to the server process, one can now reopen the debug
log file without losing any data.
|
|
Acquire an exclusive, advisory lock before sending output to debug.log
and release it when we're done. This should avoid output from multiple
threads being interspersed in the log file.
We can't use CRITICAL_SECTION machinery for this because the debug log
is written during startup and shutdown when that machinery is not
available.
(Thanks to Gavin for pointing out the CRITICAL_SECTION problems based
on his earlier work in this area)
|
|
strings to use "Qt" (and not qt or QT) / update initialisation of notificator to use qApp->applicationName() instead of a static string
|
|
JSON-RPC: remove 'getblocknumber' deprecated RPC
|
|
|
|
Create a maximum-10MB signature verification result cache.
This should almost double the number of transactions that
can be processed on a given CPU, because before this change
ECDSA signatures were verified when transactions were added
to the memory pool and then again when they appeared in
a block.
|
|
Loop over all inputs doing inexpensive validity checks first,
and then loop over them a second time doing expensive signature
checks. This helps prevent possible CPU exhaustion attacks
where an attacker tries to make a victim waste time checking
signatures for invalid transactions.
|
|
Remove orphan transactions from memory once
all of their parent transactions are received
and they're still not valid.
Thanks to Sergio Demian Lerner for suggesting this fix.
|
|
Changes suggested by Sergio Demian Lerner to
help prevent potential DoS attacks.
|
|
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.
|
|
comment in rpcconsole.h
|
|
Restore overview page (put transactions back within frame)
|
|
- Also, change "(out of sync)" to only red, instead of red and bold, which a bit more subtle
- Move label stylesheets to xml
|
|
RPC 'getblockcount' should be used instead.
|
|
Old log message:
storing orphan tx df2244f6bc
New log message:
storing orphan tx df2244f6bc (mapsz 51)
Also, trim a few trailing whitespace in main.cpp.
|
|
Report how long DBFlush took.
|
|
add missing "#define strncasecmp _strnicmp" in init.cpp"
This reverts commit f4ac41806af5766199a7d526a7becbcb8a0f5ab3.
Reason: breaks build.
|
|
Win32: use _strnicmp (ISO C++) instead of deprecated strnicmp (POSIX)
|
|
Without this change, mappings will be created even after AlreadyHave equals true, and will never be erased.
|
|
|
|
missing "#define strncasecmp _strnicmp" in init.cpp
|
|
GUI: add 2 labels to the overviewpage that display Wallet and Transaction status
|
|
usually indicates a future event.
|
|
|
|
|
|
(obsolete or current) / cleanup overviewpage XML ui-file
|
|
Add icon for debug window
|
|
|
|
Add build directory to .gitignore, so that it's not tracked.
|