From 85637006de0b9d1350a4a8a4bac6d386c5739509 Mon Sep 17 00:00:00 2001 From: Radek Doulik Date: Mon, 8 Jul 2002 16:35:09 +0000 Subject: [PATCH] 2002-07-08 Radek Doulik * decimal.h (struct signscale): fix endianess svn path=/trunk/mono/; revision=5652 --- mono/metadata/ChangeLog | 4 ++++ mono/metadata/decimal.h | 15 ++++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/mono/metadata/ChangeLog b/mono/metadata/ChangeLog index fac60be7fe4..e820a52c11a 100644 --- a/mono/metadata/ChangeLog +++ b/mono/metadata/ChangeLog @@ -1,3 +1,7 @@ +2002-07-08 Radek Doulik + + * decimal.h (struct signscale): fix endianess + 2002-07-07 Radek Doulik * reflection.c: swap box_val and not val diff --git a/mono/metadata/decimal.h b/mono/metadata/decimal.h index a01c0ff7fa6..f587f3f6029 100644 --- a/mono/metadata/decimal.h +++ b/mono/metadata/decimal.h @@ -6,12 +6,21 @@ typedef struct { union { guint32 ss32; +#if G_BYTE_ORDER != G_LITTLE_ENDIAN + struct { + unsigned int sign : 1; + unsigned int reserved2 : 7; + unsigned int scale : 8; + unsigned int reserved1 : 16; + } signscale; +#else struct { unsigned int reserved1 : 16; - unsigned int scale : 8; + unsigned int scale : 8; unsigned int reserved2 : 7; - unsigned int sign : 1; - } signscale; + unsigned int sign : 1; + } signscale; +#endif } u; guint32 hi32; guint32 lo32; -- 2.25.1