From 5f9d1f5bb59b1f129596bccb1928ce22d351f7c9 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Tue, 9 Mar 2021 03:58:07 -0600 Subject: Minor tweaks: #define -> inlineable function, while() -> for(;;) --- toys/posix/tar.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'toys/posix') diff --git a/toys/posix/tar.c b/toys/posix/tar.c index 25dfc167..c4fb4fa2 100644 --- a/toys/posix/tar.c +++ b/toys/posix/tar.c @@ -86,17 +86,17 @@ struct tar_hdr { }; // Tar uses ASCII octal when it fits, base-256 otherwise. -#define ASCII_FITS(val, len) (!(val>>(3*(len-1)))) +static int ascii_fits(unsigned long long val, int len) +{ + return !(val>>(3*(len-1))); +} + // convert from int to octal (or base-256) static void itoo(char *str, int len, unsigned long long val) { - if (ASCII_FITS(val, len)) sprintf(str, "%0*llo", len-1, val); + if (ascii_fits(val, len)) sprintf(str, "%0*llo", len-1, val); else { - str += len; - while (len--) { - *--str = val; - val >>= 8; - } + for (str += len; len--; val >>= 8) *--str = val; *str = 128; } } @@ -294,10 +294,10 @@ static int add_to_tar(struct dirtree *node) if (!FLAG(numeric_owner)) { if ((TT.owner || (pw = bufgetpwuid(st->st_uid))) && - ASCII_FITS(st->st_uid, sizeof(hdr.uid))) + ascii_fits(st->st_uid, sizeof(hdr.uid))) strncpy(hdr.uname, TT.owner ? TT.owner : pw->pw_name, sizeof(hdr.uname)); if ((TT.group || (gr = bufgetgrgid(st->st_gid))) && - ASCII_FITS(st->st_gid, sizeof(hdr.gid))) + ascii_fits(st->st_gid, sizeof(hdr.gid))) strncpy(hdr.gname, TT.group ? TT.group : gr->gr_name, sizeof(hdr.gname)); } -- cgit v1.2.3