diff options
author | junderw <junderwood@bitcoinbank.co.jp> | 2022-01-29 21:58:59 +0900 |
---|---|---|
committer | junderw <junderwood@bitcoinbank.co.jp> | 2022-02-25 09:53:10 +0900 |
commit | d41ed3215355582879c8eb6c99c2da33852f6cb1 (patch) | |
tree | da4d170ee99b2d621a19645e5840c07fd95cb76b /src/addrman.cpp | |
parent | 5b4b8f76f3ae11064d4aa3ac157558e364751fd2 (diff) |
p2p: Avoid InitError when downgrading peers.dat
fixes #24188
When downgrading, a peers.dat with a future version that has a minimum
required version larger than the downgraded version would cause an InitError.
This commit changes this behavior to overwrite the existing peers.dat with
a new empty one, while creating a backup in peers.dat.bak.
Diffstat (limited to 'src/addrman.cpp')
-rw-r--r-- | src/addrman.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/addrman.cpp b/src/addrman.cpp index 3a845b5b6e..f91a979934 100644 --- a/src/addrman.cpp +++ b/src/addrman.cpp @@ -248,7 +248,7 @@ void AddrManImpl::Unserialize(Stream& s_) s >> compat; const uint8_t lowest_compatible = compat - INCOMPATIBILITY_BASE; if (lowest_compatible > FILE_FORMAT) { - throw std::ios_base::failure(strprintf( + throw InvalidAddrManVersionError(strprintf( "Unsupported format of addrman database: %u. It is compatible with formats >=%u, " "but the maximum supported by this version of %s is %u.", uint8_t{format}, uint8_t{lowest_compatible}, PACKAGE_NAME, uint8_t{FILE_FORMAT})); |