Fix 'sweep_all' command when called with no args

Executing 'sweep_all' with no arguments segfaulted before.
This commit is contained in:
Leon Klingele 2017-11-03 04:49:26 +01:00
parent 4146f2e202
commit 424852a627
No known key found for this signature in database
GPG key ID: 83AEC0FEBAA5D483

View file

@ -3068,6 +3068,12 @@ bool simple_wallet::sweep_unmixable(const std::vector<std::string> &args_)
bool simple_wallet::sweep_main(uint64_t below, const std::vector<std::string> &args_) bool simple_wallet::sweep_main(uint64_t below, const std::vector<std::string> &args_)
{ {
// sweep_all [index=<N1>[,<N2>,...]] [<ring_size>] <address> [<payment_id>] // sweep_all [index=<N1>[,<N2>,...]] [<ring_size>] <address> [<payment_id>]
if (args_.size() == 0)
{
fail_msg_writer() << tr("No address given");
return true;
}
if (m_wallet->ask_password() && !get_and_verify_password()) { return true; } if (m_wallet->ask_password() && !get_and_verify_password()) { return true; }
if (!try_connect_to_daemon()) if (!try_connect_to_daemon())
return true; return true;
@ -3135,12 +3141,6 @@ bool simple_wallet::sweep_main(uint64_t below, const std::vector<std::string> &a
local_args.pop_back(); local_args.pop_back();
} }
if (local_args.size() == 0)
{
fail_msg_writer() << tr("No address given");
return true;
}
cryptonote::address_parse_info info; cryptonote::address_parse_info info;
if (!cryptonote::get_account_address_from_str_or_url(info, m_wallet->testnet(), local_args[0], oa_prompter)) if (!cryptonote::get_account_address_from_str_or_url(info, m_wallet->testnet(), local_args[0], oa_prompter))
{ {