diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2017-01-24 10:51:38 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2017-01-24 10:53:21 +0100 |
| commit | 40723a067e2216f643485b732f90202b38b59e4b (patch) | |
| tree | 17d39b5d4804223ea592855885abfd3919e95077 /prog/clone.go | |
| parent | 40c6a8ebf50872036d42c06e2e7a19b973539860 (diff) | |
prog: validate deserialized programs
The optimization change removed validation too aggressively.
We do need program validation during deserialization,
because we can get bad programs from corpus or hub.
Restore program validation after deserialization.
Diffstat (limited to 'prog/clone.go')
| -rw-r--r-- | prog/clone.go | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/prog/clone.go b/prog/clone.go index 6a6837148..c085b765f 100644 --- a/prog/clone.go +++ b/prog/clone.go @@ -15,8 +15,10 @@ func (p *Prog) Clone() *Prog { } p1.Calls = append(p1.Calls, c1) } - if err := p1.validate(); err != nil { - panic(err) + if debug { + if err := p1.validate(); err != nil { + panic(err) + } } return p1 } |
