diff options
Diffstat (limited to 'tools/src/h5import/h5import.c')
-rw-r--r-- | tools/src/h5import/h5import.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/src/h5import/h5import.c b/tools/src/h5import/h5import.c index 40b812f..2cd826b 100644 --- a/tools/src/h5import/h5import.c +++ b/tools/src/h5import/h5import.c @@ -4707,14 +4707,20 @@ static int process(struct Options *opt) return (0); } -uint16_t swap_uint16( uint16_t val) +uint16_t swap_uint16(uint16_t val) { - return (uint16_t)((val << 8) | (val >> 8)); + uint16_t ret; + + ASSIGN_TO_SMALLER_SIZE(ret, uint16_t, (val << 8) | (val >> 8), int); + return ret; } int16_t swap_int16(int16_t val) { - return (uint16_t)((val << 8) | ((val >> 8) & 0xFF)); + uint16_t ret; + + ASSIGN_TO_SMALLER_SIZE(ret, int16_t, (val << 8) | ((val >> 8) & 0xFF), int); + return ret; } uint32_t swap_uint32(uint32_t val) |