aboutsummaryrefslogtreecommitdiffstats
path: root/prog/size.go
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2022-12-17 12:50:41 +0100
committerDmitry Vyukov <dvyukov@google.com>2022-12-22 10:11:08 +0100
commit09ff16760eac2d6f03e93bd7d50892a6d536ed1b (patch)
treecd05620a62d554e9999babe6abd0719f9fd4156a /prog/size.go
parent9867c87359492308a169e6da6e007082e299ac3a (diff)
prog: don't mutate size of compressed images
If we do, then our code will fail/crash on decompression.
Diffstat (limited to 'prog/size.go')
-rw-r--r--prog/size.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/prog/size.go b/prog/size.go
index 1a0b9dcb6..11f1ccaf8 100644
--- a/prog/size.go
+++ b/prog/size.go
@@ -172,6 +172,12 @@ func (r *randGen) mutateSize(arg *ConstArg, parent []Arg, fields []Field) bool {
switch targetType := inner.Type().(type) {
case *VmaType:
return false
+ case *BufferType:
+ // Don't mutate size of compressed images.
+ // If we do, then our code will fail/crash on decompression.
+ if targetType.Kind == BufferCompressed {
+ return false
+ }
case *ArrayType:
if targetType.Elem.Varlen() {
return false