| Index: third_party/mojo/src/mojo/public/go/bindings/decoder.go
|
| diff --git a/third_party/mojo/src/mojo/public/go/bindings/decoder.go b/third_party/mojo/src/mojo/public/go/bindings/decoder.go
|
| index 34a230ef9acd8de1c430f195bc256d8889c6cf02..8f25c0b1e1639034c40a75dafd763d32893becfa 100644
|
| --- a/third_party/mojo/src/mojo/public/go/bindings/decoder.go
|
| +++ b/third_party/mojo/src/mojo/public/go/bindings/decoder.go
|
| @@ -290,7 +290,6 @@ func (d *Decoder) ReadString() (string, error) {
|
| // ReadPointer reads a pointer and reassigns first unclaimed byte index if the
|
| // pointer is not null.
|
| func (d *Decoder) ReadPointer() (uint64, error) {
|
| - oldEnd := d.state().offset
|
| pointer, err := d.ReadUint64()
|
| if err != nil {
|
| return pointer, err
|
| @@ -299,7 +298,7 @@ func (d *Decoder) ReadPointer() (uint64, error) {
|
| return pointer, nil
|
| }
|
|
|
| - newEnd := uint64(oldEnd) + pointer
|
| + newEnd := uint64(d.state().offset-8) + pointer
|
| if newEnd >= uint64(len(d.buf)) {
|
| return 0, fmt.Errorf("trying to access out of range memory")
|
| }
|
|
|