diff --git a/libdevcore/Common.cpp b/libdevcore/Common.cpp index 280268d8b..55250b418 100644 --- a/libdevcore/Common.cpp +++ b/libdevcore/Common.cpp @@ -27,7 +27,7 @@ using namespace dev; namespace dev { -char const* Version = "0.7.11"; +char const* Version = "0.7.12"; } diff --git a/libethcore/CommonEth.cpp b/libethcore/CommonEth.cpp index 010b7e408..744e85a27 100644 --- a/libethcore/CommonEth.cpp +++ b/libethcore/CommonEth.cpp @@ -33,7 +33,7 @@ namespace dev namespace eth { -const unsigned c_protocolVersion = 45; +const unsigned c_protocolVersion = 46; const unsigned c_databaseVersion = 5; static const vector> g_units = diff --git a/libethereum/MessageFilter.cpp b/libethereum/MessageFilter.cpp index b04d213f9..0519fe28b 100644 --- a/libethereum/MessageFilter.cpp +++ b/libethereum/MessageFilter.cpp @@ -198,7 +198,7 @@ LogEntries LogFilter::matches(TransactionReceipt const& _m) const if (!m_addresses.empty() && !m_addresses.count(e.address)) continue; for (auto const& t: m_topics) - if (!e.topics.count(t)) + if (!std::count(e.topics.begin(), e.topics.end(), t)) continue; ret.push_back(e); } diff --git a/libevm/ExtVMFace.h b/libevm/ExtVMFace.h index 65761e410..9e6601d0a 100644 --- a/libevm/ExtVMFace.h +++ b/libevm/ExtVMFace.h @@ -49,8 +49,8 @@ using LogBloom = h512; struct LogEntry { LogEntry() {} - LogEntry(RLP const& _r) { address = (Address)_r[0]; topics = (h256Set)_r[1]; data = _r[2].toBytes(); } - LogEntry(Address const& _address, h256s const& _ts, bytes&& _d): address(_address), topics(toSet(_ts)), data(std::move(_d)) {} + LogEntry(RLP const& _r) { address = (Address)_r[0]; topics = (h256s)_r[1]; data = _r[2].toBytes(); } + LogEntry(Address const& _address, h256s const& _ts, bytes&& _d): address(_address), topics(_ts), data(std::move(_d)) {} void streamRLP(RLPStream& _s) const { _s.appendList(3) << address << topics << data; } @@ -64,7 +64,7 @@ struct LogEntry } Address address; - h256Set topics; + h256s topics; bytes data; }; diff --git a/libevmcore/Instruction.h b/libevmcore/Instruction.h index eb85c0610..f8a0478f1 100644 --- a/libevmcore/Instruction.h +++ b/libevmcore/Instruction.h @@ -168,8 +168,8 @@ enum class Instruction: uint8_t CREATE = 0xf0, ///< create a new account with associated code CALL, ///< message-call into an account + CALLCODE, ///< message-call with another account's code only RETURN, ///< halt execution returning output data - CALLCODE, SUICIDE = 0xff ///< halt execution and register account for later deletion }; diff --git a/test/vm.cpp b/test/vm.cpp index edb983714..1286df420 100644 --- a/test/vm.cpp +++ b/test/vm.cpp @@ -149,7 +149,7 @@ void FakeExtVM::importLog(mObject& _o) LogEntry log; log.address = Address(o["address"].get_str()); for (auto const& t: o["topics"].get_array()) - log.topics.insert(h256(t.get_str())); + log.topics.push_back(h256(t.get_str())); log.data = importData(o); sub.logs.push_back(log); }