diff options
| author | Keith Randall <khr@google.com> | 2017-12-04 14:47:32 -0800 |
|---|---|---|
| committer | Keith Randall <khr@golang.org> | 2017-12-05 00:10:10 +0000 |
| commit | dd7cbf3a846c2cb125ac65173abaf6a8b9f903ff (patch) | |
| tree | 8f40c24b842c5fdfd8951f20f95b8cc29b226e30 /src/database/sql | |
| parent | 2ff2eab0d240ec4ccfbc05f17afa8d99c6fbed61 (diff) | |
| download | go-dd7cbf3a846c2cb125ac65173abaf6a8b9f903ff.tar.xz | |
cmd/compile: fix map assignment with panicking right-hand side
Make sure that when we're assigning to a map, we evaluate the
right-hand side before we attempt to insert into the map.
We used to evaluate the left-hand side to a pointer-to-slot-in-bucket
(which as a side effect does len(m)++), then evaluate the right-hand side,
then do the assignment. That clearly isn't correct when the right-hand side
might panic.
Fixes #22881
Change-Id: I42a62870ff4bf480568c9bdbf0bb18958962bdf0
Reviewed-on: https://go-review.googlesource.com/81817
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'src/database/sql')
0 files changed, 0 insertions, 0 deletions
