mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-18 13:17:55 +02:00
Merge #20842: docs: consolidate typo & url fixing
1112035d32doc: fix various typos (Ikko Ashimine)e8640849c7doc: Use https URLs where possible (Sawyer Billings) Pull request description: Consolidates / fixes the changes from #20762, #20836, #20810. There is no output when `test/lint/lint-all.sh` is run. Closes #20807. ACKs for top commit: MarcoFalke: ACK1112035d32Tree-SHA512: 22ca824688758281a74e5ebc6a84a358142351434e34c88c6b36045d2d241ab95fd0958565fd2060f98317e62e683323b5320cc7ec13592bf340e6922294ed78
This commit is contained in:
commit
34322b7f5c
32 changed files with 40 additions and 40 deletions
|
|
@ -217,7 +217,7 @@ endef
|
||||||
#
|
#
|
||||||
# 7. In clang.conf, swap out clang & clang++, for our compiler + flags. See #17466.
|
# 7. In clang.conf, swap out clang & clang++, for our compiler + flags. See #17466.
|
||||||
#
|
#
|
||||||
# 8. Adjust a regex in toolchain.prf, to accomodate Guix's usage of
|
# 8. Adjust a regex in toolchain.prf, to accommodate Guix's usage of
|
||||||
# CROSS_LIBRARY_PATH. See #15277.
|
# CROSS_LIBRARY_PATH. See #15277.
|
||||||
define $(package)_preprocess_cmds
|
define $(package)_preprocess_cmds
|
||||||
patch -p1 -i $($(package)_patch_dir)/freetype_back_compat.patch && \
|
patch -p1 -i $($(package)_patch_dir)/freetype_back_compat.patch && \
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ commit 7b6eb33ecd88768b28c67ce5d2d68a7eed5936b6
|
||||||
Author: fanquake <fanquake@gmail.com>
|
Author: fanquake <fanquake@gmail.com>
|
||||||
Date: Tue Aug 25 14:34:53 2020 +0800
|
Date: Tue Aug 25 14:34:53 2020 +0800
|
||||||
|
|
||||||
Remove rule that causes inadvertant header regeneration
|
Remove rule that causes inadvertent header regeneration
|
||||||
|
|
||||||
Otherwise the makefile will needlessly attempt to re-generate the
|
Otherwise the makefile will needlessly attempt to re-generate the
|
||||||
headers with gperf. This can be dropped once the upstream build is fixed.
|
headers with gperf. This can be dropped once the upstream build is fixed.
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ Date: Tue Aug 18 01:20:24 2020 +0000
|
||||||
differently based on which files have already been parsed. This is more
|
differently based on which files have already been parsed. This is more
|
||||||
likely to occur on systems with more CPUs.
|
likely to occur on systems with more CPUs.
|
||||||
|
|
||||||
Just disable threading for now. There is no noticable slowdown.
|
Just disable threading for now. There is no noticeable slowdown.
|
||||||
|
|
||||||
See #9891.
|
See #9891.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ Date: Tue Aug 18 15:15:08 2020 +0800
|
||||||
backwards-compatibility.
|
backwards-compatibility.
|
||||||
|
|
||||||
Qt 5.9 introduced a call to FT_Get_Font_Format(). Replace it with FT_Get_X11_Font_Format()
|
Qt 5.9 introduced a call to FT_Get_Font_Format(). Replace it with FT_Get_X11_Font_Format()
|
||||||
in order to remain compatibile with older freetype, which is still used by e.g. Ubuntu Trusty.
|
in order to remain compatible with older freetype, which is still used by e.g. Ubuntu Trusty.
|
||||||
|
|
||||||
See #14348.
|
See #14348.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,7 @@ Refer to [/test/functional/README.md#style-guidelines](/test/functional/README.m
|
||||||
Coding Style (Doxygen-compatible comments)
|
Coding Style (Doxygen-compatible comments)
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
|
|
||||||
Bitcoin Core uses [Doxygen](http://www.doxygen.nl/) to generate its official documentation.
|
Bitcoin Core uses [Doxygen](https://www.doxygen.nl/) to generate its official documentation.
|
||||||
|
|
||||||
Use Doxygen-compatible comment blocks for functions, methods, and fields.
|
Use Doxygen-compatible comment blocks for functions, methods, and fields.
|
||||||
|
|
||||||
|
|
@ -156,7 +156,7 @@ For example, to describe a function use:
|
||||||
bool function(int arg1, const char *arg2, std::string& arg3)
|
bool function(int arg1, const char *arg2, std::string& arg3)
|
||||||
```
|
```
|
||||||
|
|
||||||
A complete list of `@xxx` commands can be found at http://www.doxygen.nl/manual/commands.html.
|
A complete list of `@xxx` commands can be found at https://www.doxygen.nl/manual/commands.html.
|
||||||
As Doxygen recognizes the comments by the delimiters (`/**` and `*/` in this case), you don't
|
As Doxygen recognizes the comments by the delimiters (`/**` and `*/` in this case), you don't
|
||||||
*need* to provide any commands for a comment to be valid; just a description text is fine.
|
*need* to provide any commands for a comment to be valid; just a description text is fine.
|
||||||
|
|
||||||
|
|
@ -203,7 +203,7 @@ Also not picked up by Doxygen:
|
||||||
*/
|
*/
|
||||||
```
|
```
|
||||||
|
|
||||||
A full list of comment syntaxes picked up by Doxygen can be found at http://www.doxygen.nl/manual/docblocks.html,
|
A full list of comment syntaxes picked up by Doxygen can be found at https://www.doxygen.nl/manual/docblocks.html,
|
||||||
but the above styles are favored.
|
but the above styles are favored.
|
||||||
|
|
||||||
Recommendations:
|
Recommendations:
|
||||||
|
|
@ -216,7 +216,7 @@ Recommendations:
|
||||||
|
|
||||||
- Backticks aren't required when referring to functions Doxygen already knows
|
- Backticks aren't required when referring to functions Doxygen already knows
|
||||||
about; it will build hyperlinks for these automatically. See
|
about; it will build hyperlinks for these automatically. See
|
||||||
http://www.doxygen.nl/manual/autolink.html for complete info.
|
https://www.doxygen.nl/manual/autolink.html for complete info.
|
||||||
|
|
||||||
- Avoid linking to external documentation; links can break.
|
- Avoid linking to external documentation; links can break.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ static void VerifyScriptBench(benchmark::Bench& bench)
|
||||||
const int flags = SCRIPT_VERIFY_WITNESS | SCRIPT_VERIFY_P2SH;
|
const int flags = SCRIPT_VERIFY_WITNESS | SCRIPT_VERIFY_P2SH;
|
||||||
const int witnessversion = 0;
|
const int witnessversion = 0;
|
||||||
|
|
||||||
// Keypair.
|
// Key pair.
|
||||||
CKey key;
|
CKey key;
|
||||||
static const std::array<unsigned char, 32> vchKey = {
|
static const std::array<unsigned char, 32> vchKey = {
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ bool DecodeHexBlockHeader(CBlockHeader&, const std::string& hex_header);
|
||||||
/**
|
/**
|
||||||
* Parse a hex string into 256 bits
|
* Parse a hex string into 256 bits
|
||||||
* @param[in] strHex a hex-formatted, 64-character string
|
* @param[in] strHex a hex-formatted, 64-character string
|
||||||
* @param[out] result the result of the parasing
|
* @param[out] result the result of the parsing
|
||||||
* @returns true if successful, false if not
|
* @returns true if successful, false if not
|
||||||
*
|
*
|
||||||
* @see ParseHashV for an RPC-oriented version of this
|
* @see ParseHashV for an RPC-oriented version of this
|
||||||
|
|
|
||||||
|
|
@ -128,7 +128,7 @@ static bool DecodeTx(CMutableTransaction& tx, const std::vector<unsigned char>&
|
||||||
{
|
{
|
||||||
// General strategy:
|
// General strategy:
|
||||||
// - Decode both with extended serialization (which interprets the 0x0001 tag as a marker for
|
// - Decode both with extended serialization (which interprets the 0x0001 tag as a marker for
|
||||||
// the presense of witnesses) and with legacy serialization (which interprets the tag as a
|
// the presence of witnesses) and with legacy serialization (which interprets the tag as a
|
||||||
// 0-input 1-output incomplete transaction).
|
// 0-input 1-output incomplete transaction).
|
||||||
// - Restricted by try_no_witness (which disables legacy if false) and try_witness (which
|
// - Restricted by try_no_witness (which disables legacy if false) and try_witness (which
|
||||||
// disables extended if false).
|
// disables extended if false).
|
||||||
|
|
|
||||||
|
|
@ -17,12 +17,12 @@ static constexpr int AAD_PACKAGES_PER_ROUND = 21; /* 64 / 3 round down*/
|
||||||
/* A AEAD class for ChaCha20-Poly1305@bitcoin.
|
/* A AEAD class for ChaCha20-Poly1305@bitcoin.
|
||||||
*
|
*
|
||||||
* ChaCha20 is a stream cipher designed by Daniel Bernstein and described in
|
* ChaCha20 is a stream cipher designed by Daniel Bernstein and described in
|
||||||
* <ref>[http://cr.yp.to/chacha/chacha-20080128.pdf ChaCha20]</ref>. It operates
|
* <ref>[https://cr.yp.to/chacha/chacha-20080128.pdf ChaCha20]</ref>. It operates
|
||||||
* by permuting 128 fixed bits, 128 or 256 bits of key, a 64 bit nonce and a 64
|
* by permuting 128 fixed bits, 128 or 256 bits of key, a 64 bit nonce and a 64
|
||||||
* bit counter into 64 bytes of output. This output is used as a keystream, with
|
* bit counter into 64 bytes of output. This output is used as a keystream, with
|
||||||
* any unused bytes simply discarded.
|
* any unused bytes simply discarded.
|
||||||
*
|
*
|
||||||
* Poly1305 <ref>[http://cr.yp.to/mac/poly1305-20050329.pdf Poly1305]</ref>, also
|
* Poly1305 <ref>[https://cr.yp.to/mac/poly1305-20050329.pdf Poly1305]</ref>, also
|
||||||
* by Daniel Bernstein, is a one-time Carter-Wegman MAC that computes a 128 bit
|
* by Daniel Bernstein, is a one-time Carter-Wegman MAC that computes a 128 bit
|
||||||
* integrity tag given a message and a single-use 256 bit secret key.
|
* integrity tag given a message and a single-use 256 bit secret key.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -1001,7 +1001,7 @@ void Transform(uint32_t* s, const unsigned char* chunk, size_t blocks)
|
||||||
; This code is described in an Intel White-Paper:
|
; This code is described in an Intel White-Paper:
|
||||||
; "Fast SHA-256 Implementations on Intel Architecture Processors"
|
; "Fast SHA-256 Implementations on Intel Architecture Processors"
|
||||||
;
|
;
|
||||||
; To find it, surf to http://www.intel.com/p/en_US/embedded
|
; To find it, surf to https://www.intel.com/p/en_US/embedded
|
||||||
; and search for that title.
|
; and search for that title.
|
||||||
; The paper is expected to be released roughly at the end of April, 2012
|
; The paper is expected to be released roughly at the end of April, 2012
|
||||||
;
|
;
|
||||||
|
|
|
||||||
|
|
@ -225,7 +225,7 @@ private:
|
||||||
* [0, 1) and simply multiply it by the size. Then we just shift the result down by
|
* [0, 1) and simply multiply it by the size. Then we just shift the result down by
|
||||||
* 32-bits to get our bucket number. The result has non-uniformity the same as a
|
* 32-bits to get our bucket number. The result has non-uniformity the same as a
|
||||||
* mod, but it is much faster to compute. More about this technique can be found at
|
* mod, but it is much faster to compute. More about this technique can be found at
|
||||||
* http://lemire.me/blog/2016/06/27/a-fast-alternative-to-the-modulo-reduction/ .
|
* https://lemire.me/blog/2016/06/27/a-fast-alternative-to-the-modulo-reduction/ .
|
||||||
*
|
*
|
||||||
* The resulting non-uniformity is also more equally distributed which would be
|
* The resulting non-uniformity is also more equally distributed which would be
|
||||||
* advantageous for something like linear probing, though it shouldn't matter
|
* advantageous for something like linear probing, though it shouldn't matter
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ inline uint32_t ROTL32(uint32_t x, int8_t r)
|
||||||
|
|
||||||
unsigned int MurmurHash3(unsigned int nHashSeed, Span<const unsigned char> vDataToHash)
|
unsigned int MurmurHash3(unsigned int nHashSeed, Span<const unsigned char> vDataToHash)
|
||||||
{
|
{
|
||||||
// The following is MurmurHash3 (x86_32), see http://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp
|
// The following is MurmurHash3 (x86_32), see https://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp
|
||||||
uint32_t h1 = nHashSeed;
|
uint32_t h1 = nHashSeed;
|
||||||
const uint32_t c1 = 0xcc9e2d51;
|
const uint32_t c1 = 0xcc9e2d51;
|
||||||
const uint32_t c2 = 0x1b873593;
|
const uint32_t c2 = 0x1b873593;
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ static secp256k1_context* secp256k1_context_sign = nullptr;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This parses a format loosely based on a DER encoding of the ECPrivateKey type from
|
* This parses a format loosely based on a DER encoding of the ECPrivateKey type from
|
||||||
* section C.4 of SEC 1 <http://www.secg.org/sec1-v2.pdf>, with the following caveats:
|
* section C.4 of SEC 1 <https://www.secg.org/sec1-v2.pdf>, with the following caveats:
|
||||||
*
|
*
|
||||||
* * The octet-length of the SEQUENCE must be encoded as 1 or 2 octets. It is not
|
* * The octet-length of the SEQUENCE must be encoded as 1 or 2 octets. It is not
|
||||||
* required to be encoded as one octet if it is less than 256, as DER would require.
|
* required to be encoded as one octet if it is less than 256, as DER would require.
|
||||||
|
|
@ -80,7 +80,7 @@ int ec_seckey_import_der(const secp256k1_context* ctx, unsigned char *out32, con
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This serializes to a DER encoding of the ECPrivateKey type from section C.4 of SEC 1
|
* This serializes to a DER encoding of the ECPrivateKey type from section C.4 of SEC 1
|
||||||
* <http://www.secg.org/sec1-v2.pdf>. The optional parameters and publicKey fields are
|
* <https://www.secg.org/sec1-v2.pdf>. The optional parameters and publicKey fields are
|
||||||
* included.
|
* included.
|
||||||
*
|
*
|
||||||
* seckey must point to an output buffer of length at least CKey::SIZE bytes.
|
* seckey must point to an output buffer of length at least CKey::SIZE bytes.
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ uint256 CPartialMerkleTree::CalcHash(int height, unsigned int pos, const std::ve
|
||||||
//if we do not have this assert, we can hit a memory access violation when indexing into vTxid
|
//if we do not have this assert, we can hit a memory access violation when indexing into vTxid
|
||||||
assert(vTxid.size() != 0);
|
assert(vTxid.size() != 0);
|
||||||
if (height == 0) {
|
if (height == 0) {
|
||||||
// hash at height 0 is the txids themself
|
// hash at height 0 is the txids themselves
|
||||||
return vTxid[pos];
|
return vTxid[pos];
|
||||||
} else {
|
} else {
|
||||||
// calculate left hash
|
// calculate left hash
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ struct Peer {
|
||||||
|
|
||||||
/** Protects block inventory data members */
|
/** Protects block inventory data members */
|
||||||
Mutex m_block_inv_mutex;
|
Mutex m_block_inv_mutex;
|
||||||
/** List of blocks that we'll anounce via an `inv` message.
|
/** List of blocks that we'll announce via an `inv` message.
|
||||||
* There is no final sorting before sending, as they are always sent
|
* There is no final sorting before sending, as they are always sent
|
||||||
* immediately and in the order requested. */
|
* immediately and in the order requested. */
|
||||||
std::vector<uint256> m_blocks_for_inv_relay GUARDED_BY(m_block_inv_mutex);
|
std::vector<uint256> m_blocks_for_inv_relay GUARDED_BY(m_block_inv_mutex);
|
||||||
|
|
|
||||||
|
|
@ -483,7 +483,7 @@ class CSubNet
|
||||||
READWRITE(obj.network);
|
READWRITE(obj.network);
|
||||||
if (obj.network.IsIPv4()) {
|
if (obj.network.IsIPv4()) {
|
||||||
// Before commit 102867c587f5f7954232fb8ed8e85cda78bb4d32, CSubNet used the last 4 bytes of netmask
|
// Before commit 102867c587f5f7954232fb8ed8e85cda78bb4d32, CSubNet used the last 4 bytes of netmask
|
||||||
// to store the relevant bytes for an IPv4 mask. For compatiblity reasons, keep doing so in
|
// to store the relevant bytes for an IPv4 mask. For compatibility reasons, keep doing so in
|
||||||
// serialized form.
|
// serialized form.
|
||||||
unsigned char dummy[12] = {0};
|
unsigned char dummy[12] = {0};
|
||||||
READWRITE(dummy);
|
READWRITE(dummy);
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ static void RegisterMetaTypes()
|
||||||
#ifdef ENABLE_WALLET
|
#ifdef ENABLE_WALLET
|
||||||
qRegisterMetaType<WalletModel*>();
|
qRegisterMetaType<WalletModel*>();
|
||||||
#endif
|
#endif
|
||||||
// Register typedefs (see http://qt-project.org/doc/qt-5/qmetatype.html#qRegisterMetaType)
|
// Register typedefs (see https://doc.qt.io/qt-5/qmetatype.html#qRegisterMetaType)
|
||||||
// IMPORTANT: if CAmount is no longer a typedef use the normal variant above (see https://doc.qt.io/qt-5/qmetatype.html#qRegisterMetaType-1)
|
// IMPORTANT: if CAmount is no longer a typedef use the normal variant above (see https://doc.qt.io/qt-5/qmetatype.html#qRegisterMetaType-1)
|
||||||
qRegisterMetaType<CAmount>("CAmount");
|
qRegisterMetaType<CAmount>("CAmount");
|
||||||
qRegisterMetaType<size_t>("size_t");
|
qRegisterMetaType<size_t>("size_t");
|
||||||
|
|
|
||||||
|
|
@ -655,7 +655,7 @@ bool SetStartOnSystemStartup(bool fAutoStart)
|
||||||
#elif defined(Q_OS_LINUX)
|
#elif defined(Q_OS_LINUX)
|
||||||
|
|
||||||
// Follow the Desktop Application Autostart Spec:
|
// Follow the Desktop Application Autostart Spec:
|
||||||
// http://standards.freedesktop.org/autostart-spec/autostart-spec-latest.html
|
// https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html
|
||||||
|
|
||||||
fs::path static GetAutostartDir()
|
fs::path static GetAutostartDir()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,7 @@ Notificator::~Notificator()
|
||||||
|
|
||||||
#ifdef USE_DBUS
|
#ifdef USE_DBUS
|
||||||
|
|
||||||
// Loosely based on http://www.qtcentre.org/archive/index.php/t-25879.html
|
// Loosely based on https://www.qtcentre.org/archive/index.php/t-25879.html
|
||||||
class FreedesktopImage
|
class FreedesktopImage
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -127,10 +127,10 @@ void RPCNestedTests::rpcNestedTests()
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo() .\n"), std::runtime_error); //invalid syntax
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo() .\n"), std::runtime_error); //invalid syntax
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo() getblockchaininfo()"), std::runtime_error); //invalid syntax
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo() getblockchaininfo()"), std::runtime_error); //invalid syntax
|
||||||
(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo(")); //tolerate non closing brackets if we have no arguments
|
(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo(")); //tolerate non closing brackets if we have no arguments
|
||||||
(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo()()()")); //tolerate non command brackts
|
(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo()()()")); //tolerate non command brackets
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo(True)"), UniValue); //invalid argument
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "getblockchaininfo(True)"), UniValue); //invalid argument
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "a(getblockchaininfo(True))"), UniValue); //method not found
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "a(getblockchaininfo(True))"), UniValue); //method not found
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest abc,,abc"), std::runtime_error); //don't tollerate empty arguments when using ,
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest abc,,abc"), std::runtime_error); //don't tolerate empty arguments when using ,
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest(abc,,abc)"), std::runtime_error); //don't tollerate empty arguments when using ,
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest(abc,,abc)"), std::runtime_error); //don't tolerate empty arguments when using ,
|
||||||
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest(abc,,)"), std::runtime_error); //don't tollerate empty arguments when using ,
|
QVERIFY_EXCEPTION_THROWN(RPCConsole::RPCExecuteCommandLine(m_node, result, "rpcNestedTest(abc,,)"), std::runtime_error); //don't tolerate empty arguments when using ,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -152,7 +152,7 @@ WalletModel* WalletController::getOrCreateWallet(std::unique_ptr<interfaces::Wal
|
||||||
|
|
||||||
connect(wallet_model, &WalletModel::unload, this, [this, wallet_model] {
|
connect(wallet_model, &WalletModel::unload, this, [this, wallet_model] {
|
||||||
// Defer removeAndDeleteWallet when no modal widget is active.
|
// Defer removeAndDeleteWallet when no modal widget is active.
|
||||||
// TODO: remove this workaround by removing usage of QDiallog::exec.
|
// TODO: remove this workaround by removing usage of QDialog::exec.
|
||||||
if (QApplication::activeModalWidget()) {
|
if (QApplication::activeModalWidget()) {
|
||||||
connect(qApp, &QApplication::focusWindowChanged, wallet_model, [this, wallet_model]() {
|
connect(qApp, &QApplication::focusWindowChanged, wallet_model, [this, wallet_model]() {
|
||||||
if (!QApplication::activeModalWidget()) {
|
if (!QApplication::activeModalWidget()) {
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ void* Arena::alloc(size_t size)
|
||||||
|
|
||||||
// Pick a large enough free-chunk. Returns an iterator pointing to the first element that is not less than key.
|
// Pick a large enough free-chunk. Returns an iterator pointing to the first element that is not less than key.
|
||||||
// This allocation strategy is best-fit. According to "Dynamic Storage Allocation: A Survey and Critical Review",
|
// This allocation strategy is best-fit. According to "Dynamic Storage Allocation: A Survey and Critical Review",
|
||||||
// Wilson et. al. 1995, http://www.scs.stanford.edu/14wi-cs140/sched/readings/wilson.pdf, best-fit and first-fit
|
// Wilson et. al. 1995, https://www.scs.stanford.edu/14wi-cs140/sched/readings/wilson.pdf, best-fit and first-fit
|
||||||
// policies seem to work well in practice.
|
// policies seem to work well in practice.
|
||||||
auto size_ptr_it = size_to_free_chunk.lower_bound(size);
|
auto size_ptr_it = size_to_free_chunk.lower_bound(size);
|
||||||
if (size_ptr_it == size_to_free_chunk.end())
|
if (size_ptr_it == size_to_free_chunk.end())
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ BOOST_AUTO_TEST_CASE(signet_parse_tests)
|
||||||
CMutableTransaction cb;
|
CMutableTransaction cb;
|
||||||
cb.vout.emplace_back(0, CScript{});
|
cb.vout.emplace_back(0, CScript{});
|
||||||
block.vtx.push_back(MakeTransactionRef(cb));
|
block.vtx.push_back(MakeTransactionRef(cb));
|
||||||
block.vtx.push_back(MakeTransactionRef(cb)); // Add dummy tx to excercise merkle root code
|
block.vtx.push_back(MakeTransactionRef(cb)); // Add dummy tx to exercise merkle root code
|
||||||
BOOST_CHECK(!SignetTxs::Create(block, challenge));
|
BOOST_CHECK(!SignetTxs::Create(block, challenge));
|
||||||
BOOST_CHECK(!CheckSignetBlockSolution(block, signet_params->GetConsensus()));
|
BOOST_CHECK(!CheckSignetBlockSolution(block, signet_params->GetConsensus()));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -166,7 +166,7 @@ bool TimingResistantEqual(const T& a, const T& b)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Parse number as fixed point according to JSON number syntax.
|
/** Parse number as fixed point according to JSON number syntax.
|
||||||
* See http://json.org/number.gif
|
* See https://json.org/number.gif
|
||||||
* @returns true on success, false on error.
|
* @returns true on success, false on error.
|
||||||
* @note The result must be in the range (-10^18,10^18), otherwise an overflow error will trigger.
|
* @note The result must be in the range (-10^18,10^18), otherwise an overflow error will trigger.
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ public:
|
||||||
explicit SQLiteBatch(SQLiteDatabase& database);
|
explicit SQLiteBatch(SQLiteDatabase& database);
|
||||||
~SQLiteBatch() override { Close(); }
|
~SQLiteBatch() override { Close(); }
|
||||||
|
|
||||||
/* No-op. See commeng on SQLiteDatabase::Flush */
|
/* No-op. See comment on SQLiteDatabase::Flush */
|
||||||
void Flush() override {}
|
void Flush() override {}
|
||||||
|
|
||||||
void Close() override;
|
void Close() override;
|
||||||
|
|
|
||||||
|
|
@ -453,7 +453,7 @@ BOOST_AUTO_TEST_CASE(knapsack_solver_test)
|
||||||
BOOST_CHECK( testWallet.SelectCoinsMinConf(1 * MIN_CHANGE, filter_confirmed, GroupCoins(vCoins), setCoinsRet, nValueRet, coin_selection_params, bnb_used));
|
BOOST_CHECK( testWallet.SelectCoinsMinConf(1 * MIN_CHANGE, filter_confirmed, GroupCoins(vCoins), setCoinsRet, nValueRet, coin_selection_params, bnb_used));
|
||||||
BOOST_CHECK_EQUAL(nValueRet, 1 * MIN_CHANGE); // we should get the exact amount
|
BOOST_CHECK_EQUAL(nValueRet, 1 * MIN_CHANGE); // we should get the exact amount
|
||||||
|
|
||||||
// run the 'mtgox' test (see http://blockexplorer.com/tx/29a3efd3ef04f9153d47a990bd7b048a4b2d213daaa5fb8ed670fb85f13bdbcf)
|
// run the 'mtgox' test (see https://blockexplorer.com/tx/29a3efd3ef04f9153d47a990bd7b048a4b2d213daaa5fb8ed670fb85f13bdbcf)
|
||||||
// they tried to consolidate 10 50k coins into one 500k coin, and ended up with 50k in change
|
// they tried to consolidate 10 50k coins into one 500k coin, and ended up with 50k in change
|
||||||
empty_wallet();
|
empty_wallet();
|
||||||
for (int j = 0; j < 20; j++)
|
for (int j = 0; j < 20; j++)
|
||||||
|
|
|
||||||
|
|
@ -426,7 +426,7 @@ ReadKeyValue(CWallet* pwallet, CDataStream& ssKey, CDataStream& ssValue,
|
||||||
uint256 checksum;
|
uint256 checksum;
|
||||||
ssValue >> checksum;
|
ssValue >> checksum;
|
||||||
if ((checksum_valid = Hash(vchPrivKey) != checksum)) {
|
if ((checksum_valid = Hash(vchPrivKey) != checksum)) {
|
||||||
strErr = "Error reading wallet database: Crypted key corrupt";
|
strErr = "Error reading wallet database: Encrypted key corrupt";
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ class NULLDUMMYTest(BitcoinTestFramework):
|
||||||
self.wit_address = w0.getnewaddress(address_type='p2sh-segwit')
|
self.wit_address = w0.getnewaddress(address_type='p2sh-segwit')
|
||||||
self.wit_ms_address = wmulti.addmultisigaddress(1, [self.pubkey], '', 'p2sh-segwit')['address']
|
self.wit_ms_address = wmulti.addmultisigaddress(1, [self.pubkey], '', 'p2sh-segwit')['address']
|
||||||
if not self.options.descriptors:
|
if not self.options.descriptors:
|
||||||
# Legacy wallets need to import these so that they are watched by the wallet. This is unnecssary (and does not need to be tested) for descriptor wallets
|
# Legacy wallets need to import these so that they are watched by the wallet. This is unnecessary (and does not need to be tested) for descriptor wallets
|
||||||
wmulti.importaddress(self.ms_address)
|
wmulti.importaddress(self.ms_address)
|
||||||
wmulti.importaddress(self.wit_ms_address)
|
wmulti.importaddress(self.wit_ms_address)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -143,7 +143,7 @@ class InvalidTxRequestTest(BitcoinTestFramework):
|
||||||
}
|
}
|
||||||
# Transactions that do not end up in the mempool
|
# Transactions that do not end up in the mempool
|
||||||
# tx_orphan_no_fee, because it has too low fee (p2ps[0] is not disconnected for relaying that tx)
|
# tx_orphan_no_fee, because it has too low fee (p2ps[0] is not disconnected for relaying that tx)
|
||||||
# tx_orphan_invaid, because it has negative fee (p2ps[1] is disconnected for relaying that tx)
|
# tx_orphan_invalid, because it has negative fee (p2ps[1] is disconnected for relaying that tx)
|
||||||
|
|
||||||
self.wait_until(lambda: 1 == len(node.getpeerinfo()), timeout=12) # p2ps[1] is no longer connected
|
self.wait_until(lambda: 1 == len(node.getpeerinfo()), timeout=12) # p2ps[1] is no longer connected
|
||||||
assert_equal(expected_mempool, set(node.getrawmempool()))
|
assert_equal(expected_mempool, set(node.getrawmempool()))
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ def xor_bytes(b0, b1):
|
||||||
def jacobi_symbol(n, k):
|
def jacobi_symbol(n, k):
|
||||||
"""Compute the Jacobi symbol of n modulo k
|
"""Compute the Jacobi symbol of n modulo k
|
||||||
|
|
||||||
See http://en.wikipedia.org/wiki/Jacobi_symbol
|
See https://en.wikipedia.org/wiki/Jacobi_symbol
|
||||||
|
|
||||||
For our application k is always prime, so this is the same as the Legendre symbol."""
|
For our application k is always prime, so this is the same as the Legendre symbol."""
|
||||||
assert k > 0 and k & 1, "jacobi symbol is only defined for positive odd k"
|
assert k > 0 and k & 1, "jacobi symbol is only defined for positive odd k"
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ def get_bind_addrs(pid):
|
||||||
bind_addrs.append(conn[1])
|
bind_addrs.append(conn[1])
|
||||||
return bind_addrs
|
return bind_addrs
|
||||||
|
|
||||||
# from: http://code.activestate.com/recipes/439093/
|
# from: https://code.activestate.com/recipes/439093/
|
||||||
def all_interfaces():
|
def all_interfaces():
|
||||||
'''
|
'''
|
||||||
Return all interfaces that are up
|
Return all interfaces that are up
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ class WalletEncryptionTest(BitcoinTestFramework):
|
||||||
MAX_VALUE = 100000000
|
MAX_VALUE = 100000000
|
||||||
expected_time = int(time.time()) + MAX_VALUE - 600
|
expected_time = int(time.time()) + MAX_VALUE - 600
|
||||||
self.nodes[0].walletpassphrase(passphrase2, MAX_VALUE - 600)
|
self.nodes[0].walletpassphrase(passphrase2, MAX_VALUE - 600)
|
||||||
# give buffer for walletpassphrase, since it iterates over all crypted keys
|
# give buffer for walletpassphrase, since it iterates over all encrypted keys
|
||||||
expected_time_with_buffer = time.time() + MAX_VALUE - 600
|
expected_time_with_buffer = time.time() + MAX_VALUE - 600
|
||||||
actual_time = self.nodes[0].getwalletinfo()['unlocked_until']
|
actual_time = self.nodes[0].getwalletinfo()['unlocked_until']
|
||||||
assert_greater_than_or_equal(actual_time, expected_time)
|
assert_greater_than_or_equal(actual_time, expected_time)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue