Merge remote-tracking branch 'graphene/develop' into bitshares at commit 2f941c718f

This commit is contained in:
theoreticalbts 2016-02-16 12:19:59 -05:00
commit e34b83c872

View file

@ -2521,12 +2521,18 @@ string operation_printer::operator()(const transfer_operation& op) const
out << " -- Unlock wallet to see memo.";
} else {
try {
FC_ASSERT(wallet._keys.count(op.memo->to), "Memo is encrypted to a key ${k} not in this wallet.",
("k", op.memo->to));
auto my_key = wif_to_key(wallet._keys.at(op.memo->to));
FC_ASSERT(my_key, "Unable to recover private key to decrypt memo. Wallet may be corrupted.");
memo = op.memo->get_message(*my_key, op.memo->from);
out << " -- Memo: " << memo;
FC_ASSERT(wallet._keys.count(op.memo->to) || wallet._keys.count(op.memo->from), "Memo is encrypted to a key ${to} or ${from} not in this wallet.", ("to", op.memo->to)("from",op.memo->from));
if( wallet._keys.count(op.memo->to) ) {
auto my_key = wif_to_key(wallet._keys.at(op.memo->to));
FC_ASSERT(my_key, "Unable to recover private key to decrypt memo. Wallet may be corrupted.");
memo = op.memo->get_message(*my_key, op.memo->from);
out << " -- Memo: " << memo;
} else {
auto my_key = wif_to_key(wallet._keys.at(op.memo->from));
FC_ASSERT(my_key, "Unable to recover private key to decrypt memo. Wallet may be corrupted.");
memo = op.memo->get_message(*my_key, op.memo->to);
out << " -- Memo: " << memo;
}
} catch (const fc::exception& e) {
out << " -- could not decrypt memo";
elog("Error when decrypting memo: ${e}", ("e", e.to_detail_string()));