From 2fef67db3bc9e863b292f9c0b0e951f0839a9e14 Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Fri, 7 Oct 2022 14:17:53 +0100 Subject: [PATCH] trivial: Fix writing uSWIDv2 payloads The optional flags come last in the header. --- libfwupdplugin/fu-uswid-firmware.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfwupdplugin/fu-uswid-firmware.c b/libfwupdplugin/fu-uswid-firmware.c index c93fbbf2d..b36ceae99 100644 --- a/libfwupdplugin/fu-uswid-firmware.c +++ b/libfwupdplugin/fu-uswid-firmware.c @@ -258,13 +258,13 @@ fu_uswid_firmware_write(FuFirmware *firmware, GError **error) g_byte_array_append(buf, USWID_HEADER_MAGIC, sizeof(USWID_HEADER_MAGIC)); fu_byte_array_append_uint8(buf, priv->hdrver); fu_byte_array_append_uint16(buf, fu_uswid_firmware_calculate_hdrsz(self), G_LITTLE_ENDIAN); + fu_byte_array_append_uint32(buf, payload->len, G_LITTLE_ENDIAN); if (priv->hdrver >= 2) { guint8 flags = 0; if (priv->compressed) flags |= USWID_HEADER_FLAG_COMPRESSED; fu_byte_array_append_uint8(buf, flags); } - fu_byte_array_append_uint32(buf, payload->len, G_LITTLE_ENDIAN); g_byte_array_append(buf, payload->data, payload->len); /* success */