Commit 00f8319f authored by obscuren's avatar obscuren

Explicitly check memory's data store. #515

parent eb102bf4
......@@ -15,10 +15,17 @@ func NewMemory() *Memory {
}
func (m *Memory) Set(offset, size uint64, value []byte) {
// If the length of the store is 0 this is a complete failure
// memory size is set prior to calling this method so enough size
// should always be available.
if len(m.store) == 0 {
panic("INVALID memory: store empty")
}
value = common.RightPadBytes(value, int(size))
totSize := offset + size
lenSize := uint64(len(m.store) - 1)
lenSize := int64(len(m.store) - 1)
if totSize > lenSize {
// Calculate the diff between the sizes
diff := totSize - lenSize
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment