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