From e3fadaef86f01ca93074df2176cb2d7bf6cb4acb Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Thu, 1 Jul 2010 16:45:04 +0200 Subject: Fix 32bit failure in demarshaller Due to a typo we always read offsets as pointers, never as SPICE_ADDRESS. --- python_modules/demarshal.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'python_modules/demarshal.py') diff --git a/python_modules/demarshal.py b/python_modules/demarshal.py index b819513..023c3f6 100644 --- a/python_modules/demarshal.py +++ b/python_modules/demarshal.py @@ -837,14 +837,14 @@ def write_ptr_info_check(writer): is_ptr = "ptr_info[%s].is_ptr" % index dest = "ptr_info[%s].dest" % index with writer.if_block("%s == 0" % offset, newline=False): - with writer.if_block("%s == 0" % is_ptr, newline=False): + with writer.if_block(is_ptr, newline=False): writer.assign("*(void **)(%s)" % dest, "NULL") with writer.block(" else"): writer.assign("*(SPICE_ADDRESS *)(%s)" % dest, "0") with writer.block(" else"): writer.comment("Align to 32 bit").newline() writer.assign("end", "(uint8_t *)SPICE_ALIGN((size_t)end, 4)") - with writer.if_block("%s == 0" % is_ptr, newline=False): + with writer.if_block(is_ptr, newline=False): writer.assign("*(void **)(%s)" % dest, "(void *)end") with writer.block(" else"): writer.assign("*(SPICE_ADDRESS *)(%s)" % dest, "(SPICE_ADDRESS)end") -- cgit