To make the length calculation clearer, introduce a 'qemu_len' variable,
for the length of all data being added to acpi_tables (including the
QEMU-specific prefix).
No behavior change, just make the length calculation clearer.

Signed-off-by: Eduardo Habkost <ehabk...@redhat.com>
---
 hw/acpi.c |    9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hw/acpi.c b/hw/acpi.c
index abc959e..b5f0531 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -86,7 +86,8 @@ int acpi_table_add(const char *t)
 {
     char buf[1024], *p, *f;
     unsigned long val;
-    size_t acpi_len, start, allen;
+    size_t start, allen;
+    size_t qemu_len, acpi_len;
     bool has_header;
     int changed;
     int r;
@@ -150,13 +151,17 @@ int acpi_table_add(const char *t)
     /* now fill in the header fields */
 
     f = acpi_tables + start;   /* start of the table */
+
+    /* length of the whole table, including our prefix */
+    qemu_len = allen - start;
+
     changed = 0;
 
     /* copy the header to temp place to align the fields */
     memcpy(&hdr, has_header ? f : dfl_hdr, ACPI_TABLE_HDR_SIZE);
 
     /* length of the table minus our prefix */
-    acpi_len = allen - start - ACPI_TABLE_PFX_SIZE;
+    acpi_len = qemu_len - ACPI_TABLE_PFX_SIZE;
 
     hdr._length = cpu_to_le16(acpi_len);
 
-- 
1.7.10.4


Reply via email to