| 7852 | } |
| 7853 | |
| 7854 | bool ByteCodeExec::performByteCode(dev::eth::Permanence type){ |
| 7855 | for(LuxTransaction& tx : txs){ |
| 7856 | //validate VM version |
| 7857 | if(tx.getVersion().toRaw() != VersionVM::GetEVMDefault().toRaw()){ |
| 7858 | return false; |
| 7859 | } |
| 7860 | dev::eth::EnvInfo envInfo(BuildEVMEnvironment()); |
| 7861 | if(!tx.isCreation() && !globalState->addressInUse(tx.receiveAddress())){ |
| 7862 | dev::eth::ExecutionResult execRes; |
| 7863 | execRes.excepted = dev::eth::TransactionException::Unknown; |
| 7864 | result.push_back(ResultExecute{execRes, dev::eth::TransactionReceipt(dev::h256(), dev::u256(), dev::eth::LogEntries()), CTransaction()}); |
| 7865 | continue; |
| 7866 | } |
| 7867 | result.push_back(globalState->execute(envInfo, *globalSealEngine.get(), tx, type, OnOpFunc())); |
| 7868 | } |
| 7869 | globalState->db().commit(); |
| 7870 | globalState->dbUtxo().commit(); |
| 7871 | globalSealEngine.get()->deleteAddresses.clear(); |
| 7872 | return true; |
| 7873 | } |
| 7874 | |
| 7875 | bool ByteCodeExec::processingResults(ByteCodeExecResult& resultBCE){ |
| 7876 | for(size_t i = 0; i < result.size(); i++){ |
no test coverage detected