diff --git a/src/txdb.cpp b/src/txdb.cpp --- a/src/txdb.cpp +++ b/src/txdb.cpp @@ -39,11 +39,19 @@ explicit CoinEntry(const COutPoint *ptr) : outpoint(const_cast(ptr)), key(DB_COIN) {} - SERIALIZE_METHODS(CoinEntry, obj) { - TxId id = obj.outpoint->GetTxId(); - uint32_t n = obj.outpoint->GetN(); - READWRITE(obj.key, id, n); - SER_READ(obj, *obj.outpoint = COutPoint(id, n)); + template void Serialize(Stream &s) const { + s << key; + s << outpoint->GetTxId(); + s << VARINT(outpoint->GetN()); + } + + template void Unserialize(Stream &s) { + s >> key; + TxId id; + s >> id; + uint32_t n = 0; + s >> VARINT(n); + *outpoint = COutPoint(id, n); } }; } // namespace