|
|
|
@ -492,6 +492,11 @@ namespace cryptonote
|
|
|
|
|
{
|
|
|
|
|
if (std::find(missed_txs.begin(), missed_txs.end(), h) == missed_txs.end())
|
|
|
|
|
{
|
|
|
|
|
if (txs.empty())
|
|
|
|
|
{
|
|
|
|
|
res.status = "Failed: internal error - txs is empty";
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
// core returns the ones it finds in the right order
|
|
|
|
|
if (get_transaction_hash(txs.front()) != h)
|
|
|
|
|
{
|
|
|
|
@ -1150,7 +1155,7 @@ namespace cryptonote
|
|
|
|
|
error_resp.message = "Internal error: can't get block by hash. Hash = " + req.hash + '.';
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
if (blk.miner_tx.vin.size() != 1 || blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
{
|
|
|
|
|
error_resp.code = CORE_RPC_ERROR_CODE_INTERNAL_ERROR;
|
|
|
|
|
error_resp.message = "Internal error: coinbase transaction in the block has the wrong type";
|
|
|
|
@ -1188,7 +1193,7 @@ namespace cryptonote
|
|
|
|
|
error_resp.message = "Internal error: can't get block by height. Height = " + boost::lexical_cast<std::string>(h) + ". Hash = " + epee::string_tools::pod_to_hex(block_hash) + '.';
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
if (blk.miner_tx.vin.size() != 1 || blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
{
|
|
|
|
|
error_resp.code = CORE_RPC_ERROR_CODE_INTERNAL_ERROR;
|
|
|
|
|
error_resp.message = "Internal error: coinbase transaction in the block has the wrong type";
|
|
|
|
@ -1274,7 +1279,7 @@ namespace cryptonote
|
|
|
|
|
error_resp.message = "Internal error: can't get block by hash. Hash = " + req.hash + '.';
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
if (blk.miner_tx.vin.size() != 1 || blk.miner_tx.vin.front().type() != typeid(txin_gen))
|
|
|
|
|
{
|
|
|
|
|
error_resp.code = CORE_RPC_ERROR_CODE_INTERNAL_ERROR;
|
|
|
|
|
error_resp.message = "Internal error: coinbase transaction in the block has the wrong type";
|
|
|
|
|