From: Andrey Shinkevich Date: Thu, 6 Aug 2020 19:35:48 +0000 (+0300) Subject: qcow2_format.py: make printable data an extension class member X-Git-Tag: v5.2.0-rc0~170^2~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4539b3645bd5090873e2b01ea2d26899ac4c8682;p=thirdparty%2Fqemu.git qcow2_format.py: make printable data an extension class member Let us differ binary data type from string one for the extension data variable and keep the string as the QcowHeaderExtension class member. Signed-off-by: Andrey Shinkevich Reviewed-by: Eric Blake Reviewed-by: Vladimir Sementsov-Ogievskiy Message-Id: <1596742557-320265-3-git-send-email-andrey.shinkevich@virtuozzo.com> Signed-off-by: Eric Blake --- diff --git a/tests/qemu-iotests/qcow2_format.py b/tests/qemu-iotests/qcow2_format.py index cc432e7ae06..2f3681bb5f7 100644 --- a/tests/qemu-iotests/qcow2_format.py +++ b/tests/qemu-iotests/qcow2_format.py @@ -165,6 +165,13 @@ class QcowHeaderExtension(Qcow2Struct): self.data = fd.read(padded) assert self.data is not None + data_str = self.data[:self.length] + if all(c in string.printable.encode('ascii') for c in data_str): + data_str = f"'{ data_str.decode('ascii') }'" + else: + data_str = '' + self.data_str = data_str + if self.magic == QCOW2_EXT_MAGIC_BITMAPS: self.obj = Qcow2BitmapExt(data=self.data) else: @@ -174,12 +181,7 @@ class QcowHeaderExtension(Qcow2Struct): super().dump() if self.obj is None: - data = self.data[:self.length] - if all(c in string.printable.encode('ascii') for c in data): - data = f"'{ data.decode('ascii') }'" - else: - data = '' - print(f'{"data":<25} {data}') + print(f'{"data":<25} {self.data_str}') else: self.obj.dump()