From 07b9138cad7d5e8aa046f2e555563760c11a9e37 Mon Sep 17 00:00:00 2001 From: kenshi84 Date: Tue, 20 Dec 2016 13:26:39 +0900 Subject: [PATCH] support importing unportable outputs --- src/simplewallet/simplewallet.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp index 222998dfd..251f9c231 100644 --- a/src/simplewallet/simplewallet.cpp +++ b/src/simplewallet/simplewallet.cpp @@ -3962,10 +3962,19 @@ bool simple_wallet::import_outputs(const std::vector &args) std::string body(data, headerlen); std::stringstream iss; iss << body; - boost::archive::portable_binary_iarchive ar(iss); std::vector outputs; - ar >> outputs; - + try + { + boost::archive::portable_binary_iarchive ar(iss); + ar >> outputs; + } + catch (...) + { + iss.str(""); + iss << body; + boost::archive::binary_iarchive ar(iss); + ar >> outputs; + } size_t n_outputs = m_wallet->import_outputs(outputs); success_msg_writer() << boost::lexical_cast(n_outputs) << " outputs imported"; }