From d8d1067271ae71cd1e01d04f68ca04f92ec27a2e Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C5=81ukasz=20Stelmach?= Date: Fri, 24 Nov 2023 11:50:48 +0100 Subject: [PATCH] scripts: support targets without the user partiton MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit x86 emulator images do not ship user partition. Therefore there is no point in doing all the size calculations required for other targets. Change-Id: Ia59156c653695cc9067e9f971a7b4dcaa8af9d71 Signed-off-by: Łukasz Stelmach --- sd_fusing.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/sd_fusing.py b/sd_fusing.py index 7cd72be..3952681 100755 --- a/sd_fusing.py +++ b/sd_fusing.py @@ -96,13 +96,16 @@ class SdFusingTarget: self.with_super = False self.device = device total_size = device_size(device) - self.user_size = total_size - self.reserved_space - \ - reduce(lambda x, y: x + (y["size"] or 0), self.part_table, 0) - if self.user_size < 100: - logging.error(f"Not enough space for user data ({self.user_size}). Use larger storage.") - raise OSError(errno.ENOSPC, os.strerror(errno.ENOSPC), device) - # self.user_partition counts from 0 - self.part_table[self.user_partition]["size"] = self.user_size + + if hasattr(self, 'user_partition'): + self.user_size = total_size - self.reserved_space - \ + reduce(lambda x, y: x + (y["size"] or 0), self.part_table, 0) + if self.user_size < 100: + logging.error(f"Not enough space for user data ({self.user_size}). Use larger storage.") + raise OSError(errno.ENOSPC, os.strerror(errno.ENOSPC), device) + # self.user_partition counts from 0 + self.part_table[self.user_partition]["size"] = self.user_size + self.label = Label(self.part_table, ltype) self.binaries = self._get_binaries('binaries') -- 2.34.1