X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Fqt%2Ftransactionrecord.cpp;h=e28a64bdc37826fc67a87e50353d10a3b9c5b1ad;hb=9c9ba366ebc85b0d8eef6d962a9fa84cffe0cae7;hp=ec4ba10be32883df539cb93b4a041c15b8d538ff;hpb=98d23c1aaf2bfe1b1133c0f6adf9bceb586f31b2;p=novacoin.git diff --git a/src/qt/transactionrecord.cpp b/src/qt/transactionrecord.cpp index ec4ba10..e28a64b 100644 --- a/src/qt/transactionrecord.cpp +++ b/src/qt/transactionrecord.cpp @@ -46,67 +46,19 @@ QList TransactionRecord::decomposeTransaction(const CWallet * sub.idx = parts.size(); // sequence number sub.credit = txout.nValue; - if (!fTestNet) + std::string address; + if (pwalletMain->ExtractAddress(txout.scriptPubKey, address)) { - CTxDestination address; - if (ExtractDestination(txout.scriptPubKey, address) && IsMine(*wallet, address)) - { - // Received by Bitcoin Address - sub.type = TransactionRecord::RecvWithAddress; - sub.address = CBitcoinAddress(address).ToString(); - } - else - { - // Received by IP connection (deprecated features), or a multisignature or other non-simple transaction - sub.type = TransactionRecord::RecvFromOther; - sub.address = mapValue["from"]; - } - } - else - { - txnouttype whichType; - std::vector vSolutions; - if (Solver(txout.scriptPubKey, whichType, vSolutions)) - { - CTxDestination address; - if (whichType == TX_PUBKEY) - { - // Pay-to-Pubkey - address = CPubKey(vSolutions[0]).GetID(); - sub.type = TransactionRecord::RecvWithAddress; - sub.address = CBitcoinAddress(address).ToString(); - } - else if (whichType == TX_PUBKEYHASH) - { - // Pay-to-PubkeyHash - address = CKeyID(uint160(vSolutions[0])); - sub.type = TransactionRecord::RecvWithAddress; - sub.address = CBitcoinAddress(address).ToString(); - } - else if (whichType == TX_SCRIPTHASH) - { - // Pay-to-ScriptHash - address = CScriptID(uint160(vSolutions[0])); - sub.type = TransactionRecord::RecvWithAddress; - sub.address = CBitcoinAddress(address).ToString(); - } - else if (whichType == TX_PUBKEY_DROP) - { - // Pay-to-Pubkey-R - sub.type = TransactionRecord::RecvWithAddress; - - CMalleableKeyView view; - pwalletMain->CheckOwnership(CPubKey(vSolutions[0]), CPubKey(vSolutions[1]), view); - sub.address = view.GetMalleablePubKey().ToString(); - } - else - { - // Received by IP connection (deprecated features), or a multisignature or other non-simple transaction - sub.type = TransactionRecord::RecvFromOther; - sub.address = mapValue["from"]; - } - } + sub.type = TransactionRecord::RecvWithAddress; + sub.address = address; } + else + { + // Received by IP connection (deprecated features), or a multisignature or other non-simple transaction + sub.type = TransactionRecord::RecvFromOther; + sub.address = mapValue["from"]; + } + if (wtx.IsCoinBase()) { // Generated (proof-of-work)