Cast uid and gid to the correct type for display to solve segfault in ls(1) on 32bit arches
Correctly escape literal % for display This fixes segfaults in 32bit arches caused by r285734 Reviewed by: ngie Approved by: dim Sponsored by: ScaleEngine Inc. Differential Revision: https://reviews.freebsd.org/D3191
This commit is contained in:
parent
268d180ee5
commit
5af1607586
@ -192,7 +192,7 @@ printlong(const DISPLAY *dp)
|
||||
if (f_numericonly) {
|
||||
xo_emit("{t:mode/%s}{e:mode_octal/%03o} {t:links/%*u} {td:user/%-*s}{e:user/%ju} {td:group/%-*s}{e:group/%ju} ",
|
||||
buf, (int) sp->st_mode & ALLPERMS, dp->s_nlink, sp->st_nlink,
|
||||
dp->s_user, np->user, sp->st_uid, dp->s_group, np->group, sp->st_gid);
|
||||
dp->s_user, np->user, (uintmax_t)sp->st_uid, dp->s_group, np->group, (uintmax_t)sp->st_gid);
|
||||
} else {
|
||||
xo_emit("{t:mode/%s}{e:mode_octal/%03o} {t:links/%*u} {t:user/%-*s} {t:group/%-*s} ",
|
||||
buf, (int) sp->st_mode & ALLPERMS, dp->s_nlink, sp->st_nlink,
|
||||
@ -486,7 +486,7 @@ printtype(u_int mode)
|
||||
xo_emit("{D:=}{e:type/socket}");
|
||||
return (1);
|
||||
case S_IFWHT:
|
||||
xo_emit("{D:%}{e:type/whiteout}");
|
||||
xo_emit("{D:%%}{e:type/whiteout}");
|
||||
return (1);
|
||||
default:
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user