Merge pull request #362

2634307 daemon: omit extra set of <> in error message (moneromooo-monero)
0822933 daemon: print a decoded tx in print_tx (moneromooo-monero)
1d678b1 daemon: fix print_tx not find transactions (moneromooo-monero)
This commit is contained in:
Riccardo Spagni 2015-08-10 20:03:17 +02:00
commit 5c87469fd1
No known key found for this signature in database
GPG Key ID: 55432DF31CCD4FCD

View File

@ -482,6 +482,7 @@ bool t_rpc_command_executor::print_transaction(crypto::hash transaction_hash) {
}
else
{
req.txs_hashes.push_back(epee::string_tools::pod_to_hex(transaction_hash));
if (!m_rpc_server->on_get_transactions(req, res))
{
tools::fail_msg_writer() << fail_message.c_str();
@ -491,11 +492,29 @@ bool t_rpc_command_executor::print_transaction(crypto::hash transaction_hash) {
if (1 == res.txs_as_hex.size())
{
// first as hex
tools::success_msg_writer() << res.txs_as_hex.front();
// then as json
crypto::hash tx_hash, tx_prefix_hash;
cryptonote::transaction tx;
cryptonote::blobdata blob;
if (!string_tools::parse_hexstr_to_binbuff(res.txs_as_hex.front(), blob))
{
tools::fail_msg_writer() << "Failed to parse tx";
}
else if (!cryptonote::parse_and_validate_tx_from_blob(blob, tx, tx_hash, tx_prefix_hash))
{
tools::fail_msg_writer() << "Failed to parse tx blob";
}
else
{
tools::fail_msg_writer() << "transaction wasn't found: <" << transaction_hash << '>' << std::endl;
tools::success_msg_writer() << cryptonote::obj_to_json_str(tx) << std::endl;
}
}
else
{
tools::fail_msg_writer() << "transaction wasn't found: " << transaction_hash << std::endl;
}
return true;