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 aa57eca8c..b2abe85af 100644 --- a/libbb/dump.c +++ b/libbb/dump.c | |||
@@ -703,15 +703,21 @@ static NOINLINE void display(priv_dumper_t* dumper) | |||
703 | conv_u(pr, bp); | 703 | conv_u(pr, bp); |
704 | break; | 704 | break; |
705 | case F_UINT: { | 705 | case F_UINT: { |
706 | union { | ||
707 | uint16_t uval16; | ||
708 | uint32_t uval32; | ||
709 | } u; | ||
706 | unsigned value = (unsigned char)*bp; | 710 | unsigned value = (unsigned char)*bp; |
707 | switch (pr->bcnt) { | 711 | switch (pr->bcnt) { |
708 | case 1: | 712 | case 1: |
709 | break; | 713 | break; |
710 | case 2: | 714 | case 2: |
711 | move_from_unaligned16(value, bp); | 715 | move_from_unaligned16(u.uval16, bp); |
716 | value = u.uval16; | ||
712 | break; | 717 | break; |
713 | case 4: | 718 | case 4: |
714 | move_from_unaligned32(value, bp); | 719 | move_from_unaligned32(u.uval32, bp); |
720 | value = u.uval32; | ||
715 | break; | 721 | break; |
716 | /* case 8: no users yet */ | 722 | /* case 8: no users yet */ |
717 | } | 723 | } |