aboutsummaryrefslogtreecommitdiff
path: root/src/netbase.h
diff options
context:
space:
mode:
authorKamil Domanski <kdomanski@kdemail.net>2014-08-20 22:44:38 +0200
committerKamil Domanski <kdomanski@kdemail.net>2014-08-31 02:16:17 +0200
commit84881f8c472cc67dc757686eb7dc3b495b13cab8 (patch)
tree9aa2ae012cc4817464cb60e9d838fa92464a9477 /src/netbase.h
parent5d96b4ae0188fcad36105642c5d69249d37fdbb5 (diff)
downloadbitcoin-84881f8c472cc67dc757686eb7dc3b495b13cab8.tar.xz
rework overhauled serialization methods to non-static
Thanks to Pieter Wuille for most of the work on this commit. I did not fixup the overhaul commit, because a rebase conflicted with "remove fields of ser_streamplaceholder". I prefer not to risk making a mistake while resolving it.
Diffstat (limited to 'src/netbase.h')
-rw-r--r--src/netbase.h20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/netbase.h b/src/netbase.h
index 6f8c132502..b4ba711261 100644
--- a/src/netbase.h
+++ b/src/netbase.h
@@ -88,12 +88,12 @@ class CNetAddr
friend bool operator!=(const CNetAddr& a, const CNetAddr& b);
friend bool operator<(const CNetAddr& a, const CNetAddr& b);
- IMPLEMENT_SERIALIZE
+ IMPLEMENT_SERIALIZE;
- template <typename T, typename Stream, typename Operation>
- inline static size_t SerializationOp(T thisPtr, Stream& s, Operation ser_action, int nType, int nVersion) {
+ template <typename Stream, typename Operation>
+ inline size_t SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) {
size_t nSerSize = 0;
- READWRITE(FLATDATA(thisPtr->ip));
+ READWRITE(FLATDATA(ip));
return nSerSize;
}
};
@@ -152,15 +152,15 @@ class CService : public CNetAddr
CService(const struct in6_addr& ipv6Addr, unsigned short port);
CService(const struct sockaddr_in6& addr);
- IMPLEMENT_SERIALIZE
+ IMPLEMENT_SERIALIZE;
- template <typename T, typename Stream, typename Operation>
- inline static size_t SerializationOp(T thisPtr, Stream& s, Operation ser_action, int nType, int nVersion) {
+ template <typename Stream, typename Operation>
+ inline size_t SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) {
bool fRead = boost::is_same<Operation, CSerActionUnserialize>();
size_t nSerSize = 0;
- CService* pthis = const_cast<CService*>(thisPtr);
- READWRITE(FLATDATA(thisPtr->ip));
- unsigned short portN = htons(thisPtr->port);
+ CService* pthis = const_cast<CService*>(this);
+ READWRITE(FLATDATA(ip));
+ unsigned short portN = htons(port);
READWRITE(portN);
if (fRead)
pthis->port = ntohs(portN);