From a47631b772437fb85bbe0e74f3315e84a054d49b Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Wed, 14 Jan 2026 10:30:29 +0100 Subject: [PATCH] [utils,encoded_types] fix Wimplicit-int-enum-cast warnings --- libfreerdp/utils/encoded_types.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/libfreerdp/utils/encoded_types.c b/libfreerdp/utils/encoded_types.c index 1075eacbc..f419dd09a 100644 --- a/libfreerdp/utils/encoded_types.c +++ b/libfreerdp/utils/encoded_types.c @@ -65,9 +65,25 @@ typedef struct BYTE val4; } FOUR_BYTE_FLOAT; +static inline FOUR_BYTE_SIGNED_INTEGER FOUR_BYTE_SIGNED_INTEGER_init(void) +{ + const FOUR_BYTE_SIGNED_INTEGER empty = { + .c = ONE_BYTE_VAL, .s = POSITIVE_VAL, .val1 = 0, .val2 = 0, .val3 = 0, .val4 = 0 + }; + return empty; +} + +static inline FOUR_BYTE_FLOAT FOUR_BYTE_FLOAT_init(void) +{ + const FOUR_BYTE_FLOAT empty = { + .c = ONE_BYTE_VAL, .s = POSITIVE_VAL, .e = 0, .val1 = 0, .val2 = 0, .val3 = 0, .val4 = 0 + }; + return empty; +} + BOOL freerdp_read_four_byte_signed_integer(wStream* s, INT32* value) { - FOUR_BYTE_SIGNED_INTEGER si = { 0 }; + FOUR_BYTE_SIGNED_INTEGER si = FOUR_BYTE_SIGNED_INTEGER_init(); BYTE byte = 0; WINPR_ASSERT(s); @@ -125,7 +141,7 @@ BOOL freerdp_read_four_byte_signed_integer(wStream* s, INT32* value) BOOL freerdp_write_four_byte_signed_integer(wStream* s, INT32 value) { - FOUR_BYTE_SIGNED_INTEGER si = { 0 }; + FOUR_BYTE_SIGNED_INTEGER si = FOUR_BYTE_SIGNED_INTEGER_init(); WINPR_ASSERT(s); if (value > FREERDP_FOUR_BYTE_SIGNED_INT_MAX) @@ -212,7 +228,7 @@ BOOL freerdp_read_four_byte_float(wStream* s, double* value) BOOL freerdp_read_four_byte_float_exp(wStream* s, double* value, BYTE* exp) { - FOUR_BYTE_FLOAT f = { 0 }; + FOUR_BYTE_FLOAT f = FOUR_BYTE_FLOAT_init(); UINT32 base = 0; BYTE byte = 0; @@ -278,7 +294,7 @@ BOOL freerdp_read_four_byte_float_exp(wStream* s, double* value, BYTE* exp) BOOL freerdp_write_four_byte_float(wStream* s, double value) { - FOUR_BYTE_FLOAT si = { 0 }; + FOUR_BYTE_FLOAT si = FOUR_BYTE_FLOAT_init(); WINPR_ASSERT(s);