It will fail unexpectedly if any sub-image lacks an extra device (blob).

Fixes: 7550a30c332c ("erofs-utils: enable incremental builds")
Signed-off-by: Gao Xiang <hsiang...@linux.alibaba.com>
---
 mkfs/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mkfs/main.c b/mkfs/main.c
index 5c8b5e4..7e2e184 100644
--- a/mkfs/main.c
+++ b/mkfs/main.c
@@ -1091,7 +1091,8 @@ static int erofs_mkfs_rebuild_load_trees(struct 
erofs_inode *root)
        if (datamode != EROFS_REBUILD_DATA_BLOB_INDEX)
                return 0;
 
-       if (extra_devices != rebuild_src_count) {
+       /* Each blob has either no extra device or only one device for TarFS */
+       if (extra_devices && extra_devices != rebuild_src_count) {
                erofs_err("extra_devices(%u) is mismatched with source 
images(%u)",
                          extra_devices, rebuild_src_count);
                return -EOPNOTSUPP;
-- 
2.43.5

Reply via email to