misc/musl/musl-static-ubuntu.sh | 2 +- src/nnn.c | 8 +++++--- diff --git a/misc/musl/musl-static-ubuntu.sh b/misc/musl/musl-static-ubuntu.sh index b05879104a2116e3a18a11716a2d69142c4209f5..b8b0aeb734ba5ac16f1099ed8474dd78b8bc78a7 100755 --- a/misc/musl/musl-static-ubuntu.sh +++ b/misc/musl/musl-static-ubuntu.sh @@ -33,7 +33,7 @@ # Compile nnn cd .. [ -e "./netbsd-curses" ] || rm "$BIN" -musl-gcc -O3 -DNORL -DNOMOUSE -Wall -Wextra -Wshadow -I./netbsd-curses/libcurses -o "$BIN" src/nnn.c -Wl,-Bsymbolic-functions -L./netbsd-curses/libs -lcurses -lterminfo -static +musl-gcc -O3 -DNORL -DNOMOUSE -std=c11 -Wall -Wextra -Wshadow -I./netbsd-curses/libcurses -o "$BIN" src/nnn.c -Wl,-Bsymbolic-functions -L./netbsd-curses/libs -lcurses -lterminfo -static strip "$BIN" # Run the binary with it selected diff --git a/src/nnn.c b/src/nnn.c index 67350ae1bf5993e149e72a3a8748726c71800b26..ba48fabab33d8eccefaecc2835d70073cb46de37 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -252,13 +252,15 @@ time_t sec; /* 8 bytes */ uint_t nsec; /* 4 bytes (enough to store nanosec) */ mode_t mode; /* 4 bytes */ off_t size; /* 8 bytes */ - uint_t blocks; /* number of 512B blocks allocated; 4 bytes (enough to store 2048TiB) */ + struct { + ulong_t blocks : 40; /* 8 bytes (enough for 512 TiB in 512B blocks allocated) */ + ulong_t nlen : 16; /* 2 bytes (length of file name) */ + ulong_t flags : 8; /* 1 byte (flags specific to the file) */ + }; #ifndef NOUG uid_t uid; /* 4 bytes */ gid_t gid; /* 4 bytes */ #endif - ushort_t nlen; /* Length of file name */ - uchar_t flags; /* Flags specific to the file */ } *pEntry; /* Key-value pairs from env */