From: malc Date: Wed, 20 Aug 2008 22:39:26 +0000 (+0000) Subject: Fix tswap size X-Git-Tag: TizenStudio_2.0_p2.3~11190 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5e810eaee4c51b26f6f9d826406c258137f9a135;p=sdk%2Femulator%2Fqemu.git Fix tswap size p in this case is uint32_t * e1/e2 are unsigned ints initialized from arithmetics performed on unsigned longs The mistake was, probably, never noticed due to the absence of any big endian linux-user host. The types e1/e2 and p begs the quesiton why this function takes longs at all. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5036 c046a42c-6fe2-441c-8c8c-71466251a162 --- diff --git a/linux-user/main.c b/linux-user/main.c index 11e9be8..bc8c1e6 100644 --- a/linux-user/main.c +++ b/linux-user/main.c @@ -278,8 +278,8 @@ static void write_dt(void *ptr, unsigned long addr, unsigned long limit, e2 = ((addr >> 16) & 0xff) | (addr & 0xff000000) | (limit & 0x000f0000); e2 |= flags; p = ptr; - p[0] = tswapl(e1); - p[1] = tswapl(e2); + p[0] = tswap32(e1); + p[1] = tswap32(e2); } #if TARGET_X86_64