Skip to content

Olympic Release (0.9.25)

Compare
Choose a tag to compare
@obscuren obscuren released this 27 May 00:08
· 9899 commits to master since this release

This update fixes two things:

  1. Hardcode a block's header hash so that when it encounters it in your blockchain revert back the valid parent and from there on get back on the right track. All clients which catch up from anything previous to the invalid block won't have any issue and might not even notice the bad chain.
  2. Fixes an issue within the Ethereum VM's memory when doing a sub-call (op codes CALL & CALLCODE). When doing a sub-call you reserve a bit of memory for the sub-calls return data and write to that memory region when the sub-call returns. The subtle change is that previously Geth would zero out the memory and then write, now it doesn't zero and write directly. Here's an example of the before and after

Before:

Mem before call   = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call    = [6,6,0,0,0,0,0,0,0,0]

After:

Mem before call   = [1,1,1,1,1,1,1,1,1,1]
Sub calls returns = [6,6]
Mem after call    = [6,6,1,1,1,1,1,1,1,1]

This update also includes a re-work of the p2p dialing mechanism.