diff options
| author | Alexander Yastrebov <yastrebov.alex@gmail.com> | 2023-01-23 16:52:33 +0000 |
|---|---|---|
| committer | Robert Griesemer <gri@google.com> | 2023-01-23 18:18:05 +0000 |
| commit | 5e03c634b841f60125d69865abf85e3c39fd6376 (patch) | |
| tree | 27b1f34e3e92a61502ef984d8ddc5ffb3bab4a3a /src/math/big/floatmarsh.go | |
| parent | 28f8dbd7b941648aea311bb0cf331f88c02441b6 (diff) | |
| download | go-5e03c634b841f60125d69865abf85e3c39fd6376.tar.xz | |
math/big: validate result of Float.GobDecode
Fixes #57946
Change-Id: Ia499ebfd8801432122f89fdf6bda4d1e7b6dd832
GitHub-Last-Rev: 29e099388680bc5b7075e0fa63499b39697579ca
GitHub-Pull-Request: golang/go#57951
Reviewed-on: https://go-review.googlesource.com/c/go/+/463017
Run-TryBot: Robert Griesemer <gri@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Robert Griesemer <gri@google.com>
Diffstat (limited to 'src/math/big/floatmarsh.go')
| -rw-r--r-- | src/math/big/floatmarsh.go | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/math/big/floatmarsh.go b/src/math/big/floatmarsh.go index 990e085abe..2a78c69e34 100644 --- a/src/math/big/floatmarsh.go +++ b/src/math/big/floatmarsh.go @@ -99,6 +99,10 @@ func (z *Float) GobDecode(buf []byte) error { z.SetPrec(uint(oldPrec)) } + if msg := z.validate0(); msg != "" { + return errors.New("Float.GobDecode: " + msg) + } + return nil } |
