aboutsummaryrefslogtreecommitdiff
path: root/libbb/dump.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--libbb/dump.c10
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 }