X-Git-Url: https://git.novaco.in/?p=electrum-server.git;a=blobdiff_plain;f=backends%2Flibbitcoin%2Fhistory.cpp;fp=backends%2Flibbitcoin%2Fhistory.cpp;h=4baaa8405c8fe9b1f91dc9257a3833c2c1dad92b;hp=a1b5bbcca9a993de6b861897fa5bc8f69538a898;hb=fc7ce0e8093a5f37de7082702fe959931ac44c04;hpb=530f276b49630d135ae00e5def744503f60eb81c diff --git a/backends/libbitcoin/history.cpp b/backends/libbitcoin/history.cpp index a1b5bbc..4baaa84 100644 --- a/backends/libbitcoin/history.cpp +++ b/backends/libbitcoin/history.cpp @@ -77,7 +77,12 @@ public: void start(const std::string& address, finish_handler handle_finish) { - address_.set_encoded(address); + if (!address_.set_encoded(address)) + { + handle_finish(make_error_code(std::errc::address_not_available), + statement_entry()); + return; + } handle_finish_ = handle_finish; chain_->fetch_outputs(address_, strand_.wrap(std::bind(&query_history::start_loading, @@ -107,6 +112,11 @@ private: { if (stop_on_error(ec)) return; + else if (outpoints.empty()) + { + handle_finish_(std::error_code(), statement_entry()); + return; + } for (auto outpoint: outpoints) { auto entry = std::make_shared();