diff options
Diffstat (limited to 'libbb/dump.c')
-rw-r--r-- | libbb/dump.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libbb/dump.c b/libbb/dump.c index 2ca9919da..ac5d47d9e 100644 --- a/libbb/dump.c +++ b/libbb/dump.c | |||
@@ -667,15 +667,21 @@ static NOINLINE void display(priv_dumper_t* dumper) | |||
667 | conv_u(pr, bp); | 667 | conv_u(pr, bp); |
668 | break; | 668 | break; |
669 | case F_UINT: { | 669 | case F_UINT: { |
670 | union { | ||
671 | uint16_t uval16; | ||
672 | uint32_t uval32; | ||
673 | } u; | ||
670 | unsigned value = (unsigned char)*bp; | 674 | unsigned value = (unsigned char)*bp; |
671 | switch (pr->bcnt) { | 675 | switch (pr->bcnt) { |
672 | case 1: | 676 | case 1: |
673 | break; | 677 | break; |
674 | case 2: | 678 | case 2: |
675 | move_from_unaligned16(value, bp); | 679 | move_from_unaligned16(u.uval16, bp); |
680 | value = u.uval16; | ||
676 | break; | 681 | break; |
677 | case 4: | 682 | case 4: |
678 | move_from_unaligned32(value, bp); | 683 | move_from_unaligned32(u.uval32, bp); |
684 | value = u.uval32; | ||
679 | break; | 685 | break; |
680 | /* case 8: no users yet */ | 686 | /* case 8: no users yet */ |
681 | } | 687 | } |