Change SuperImageProperties.Block_devices to be a slice of string
There are some products have empty BOARD_SUPER_PARTITION_BLOCK_DEVICES,
which is valid. But the previous super image logic didn't handle
it correctly. This CL fixes the issue.
Test: CI and verified on the product that has PRODUCT_BUILD_SUPER_PARTITION
true and empty BOARD_SUPER_PARTITION_BLOCK_DEVICES
Change-Id: I761848ce6abc3f75a5b2083b79008f236e08b4fb
diff --git a/filesystem/super_image.go b/filesystem/super_image.go
index 1583c0b..0f8f614 100644
--- a/filesystem/super_image.go
+++ b/filesystem/super_image.go
@@ -44,7 +44,7 @@
// the block device where metadata for dynamic partitions is stored
Metadata_device *string
// the super partition block device list
- Block_devices *string
+ Block_devices []string
// whether A/B updater is used
Ab_update *bool
// whether dynamic partitions is enabled on devices that were launched without this support
@@ -153,7 +153,9 @@
addStr("dynamic_partition_retrofit", strconv.FormatBool(proptools.Bool(s.properties.Retrofit)))
addStr("lpmake", "lpmake")
addStr("super_metadata_device", proptools.String(s.properties.Metadata_device))
- addStr("super_block_devices", proptools.String(s.properties.Block_devices))
+ if len(s.properties.Block_devices) > 0 {
+ addStr("super_block_devices", strings.Join(s.properties.Block_devices, " "))
+ }
addStr("super_super_device_size", strconv.Itoa(proptools.Int(s.properties.Size)))
var groups, partitionList []string
for _, groupInfo := range s.properties.Partition_groups {