refactor: Avoid &foo[0] on C-Style arrays

This is confusing at best when parts of a class use the
redundant operators and other parts do not.
This commit is contained in:
MarcoFalke 2021-04-30 19:52:00 +02:00
parent face961109
commit faece47c47
No known key found for this signature in database
GPG key ID: CE2B75697E69A548
5 changed files with 6 additions and 6 deletions

View file

@ -293,7 +293,7 @@ bool CKey::Derive(CKey& keyChild, ChainCode &ccChild, unsigned int nChild, const
bool CExtKey::Derive(CExtKey &out, unsigned int _nChild) const { bool CExtKey::Derive(CExtKey &out, unsigned int _nChild) const {
out.nDepth = nDepth + 1; out.nDepth = nDepth + 1;
CKeyID id = key.GetPubKey().GetID(); CKeyID id = key.GetPubKey().GetID();
memcpy(&out.vchFingerprint[0], &id, 4); memcpy(out.vchFingerprint, &id, 4);
out.nChild = _nChild; out.nChild = _nChild;
return key.Derive(out.key, out.chaincode, _nChild, chaincode); return key.Derive(out.key, out.chaincode, _nChild, chaincode);
} }
@ -312,7 +312,7 @@ void CExtKey::SetSeed(const unsigned char *seed, unsigned int nSeedLen) {
CExtPubKey CExtKey::Neuter() const { CExtPubKey CExtKey::Neuter() const {
CExtPubKey ret; CExtPubKey ret;
ret.nDepth = nDepth; ret.nDepth = nDepth;
memcpy(&ret.vchFingerprint[0], &vchFingerprint[0], 4); memcpy(ret.vchFingerprint, vchFingerprint, 4);
ret.nChild = nChild; ret.nChild = nChild;
ret.pubkey = key.GetPubKey(); ret.pubkey = key.GetPubKey();
ret.chaincode = chaincode; ret.chaincode = chaincode;

View file

@ -151,7 +151,7 @@ struct CExtKey {
friend bool operator==(const CExtKey& a, const CExtKey& b) friend bool operator==(const CExtKey& a, const CExtKey& b)
{ {
return a.nDepth == b.nDepth && return a.nDepth == b.nDepth &&
memcmp(&a.vchFingerprint[0], &b.vchFingerprint[0], sizeof(vchFingerprint)) == 0 && memcmp(a.vchFingerprint, b.vchFingerprint, sizeof(vchFingerprint)) == 0 &&
a.nChild == b.nChild && a.nChild == b.nChild &&
a.chaincode == b.chaincode && a.chaincode == b.chaincode &&
a.key == b.key; a.key == b.key;

View file

@ -293,7 +293,7 @@ void CExtPubKey::Decode(const unsigned char code[BIP32_EXTKEY_SIZE]) {
bool CExtPubKey::Derive(CExtPubKey &out, unsigned int _nChild) const { bool CExtPubKey::Derive(CExtPubKey &out, unsigned int _nChild) const {
out.nDepth = nDepth + 1; out.nDepth = nDepth + 1;
CKeyID id = pubkey.GetID(); CKeyID id = pubkey.GetID();
memcpy(&out.vchFingerprint[0], &id, 4); memcpy(out.vchFingerprint, &id, 4);
out.nChild = _nChild; out.nChild = _nChild;
return pubkey.Derive(out.pubkey, out.chaincode, _nChild, chaincode); return pubkey.Derive(out.pubkey, out.chaincode, _nChild, chaincode);
} }

View file

@ -247,7 +247,7 @@ struct CExtPubKey {
friend bool operator==(const CExtPubKey &a, const CExtPubKey &b) friend bool operator==(const CExtPubKey &a, const CExtPubKey &b)
{ {
return a.nDepth == b.nDepth && return a.nDepth == b.nDepth &&
memcmp(&a.vchFingerprint[0], &b.vchFingerprint[0], sizeof(vchFingerprint)) == 0 && memcmp(a.vchFingerprint, b.vchFingerprint, sizeof(vchFingerprint)) == 0 &&
a.nChild == b.nChild && a.nChild == b.nChild &&
a.chaincode == b.chaincode && a.chaincode == b.chaincode &&
a.pubkey == b.pubkey; a.pubkey == b.pubkey;

View file

@ -168,7 +168,7 @@ bool CZMQAbstractPublishNotifier::SendZmqMessage(const char *command, const void
/* send three parts, command & data & a LE 4byte sequence number */ /* send three parts, command & data & a LE 4byte sequence number */
unsigned char msgseq[sizeof(uint32_t)]; unsigned char msgseq[sizeof(uint32_t)];
WriteLE32(&msgseq[0], nSequence); WriteLE32(msgseq, nSequence);
int rc = zmq_send_multipart(psocket, command, strlen(command), data, size, msgseq, (size_t)sizeof(uint32_t), nullptr); int rc = zmq_send_multipart(psocket, command, strlen(command), data, size, msgseq, (size_t)sizeof(uint32_t), nullptr);
if (rc == -1) if (rc == -1)
return false; return false;