PSARC 2014/170 text-utilities version 2.24.2
18307792 request for "column" utility in Userland
A printf format specifier of "qx" isn't supported on Solaris.
http://man7.org/linux/man-pages/man3/printf.3.html says:
q ("quad". 4.4BSD and Linux libc5 only. Don't use.) This is a
synonym for ll.
This change will be sent upstream.
--- util-linux-2.24.2/text-utils/parse.c.orig 2014-06-04 13:04:47.338346633 -0700
+++ util-linux-2.24.2/text-utils/parse.c 2014-06-04 14:15:15.476415780 -0700
@@ -208,7 +208,7 @@
PR *pr, **nextpr;
FU *fu;
char *p1, *p2;
- char savech, *fmtp, cs[3];
+ char savech, *fmtp, cs[4];
int nconv, prec;
nextpr = NULL;
@@ -282,9 +282,10 @@
goto isint;
case 'o': case 'u': case 'x': case 'X':
pr->flags = F_UINT;
-isint: cs[2] = '\0';
- cs[1] = cs[0];
- cs[0] = 'q';
+isint: cs[3] = '\0';
+ cs[2] = cs[0];
+ cs[1] = 'l';
+ cs[0] = 'l';
switch(fu->bcnt) {
case 0: case 4:
pr->bcnt = 4;
@@ -342,9 +343,10 @@
++p2;
switch(p1[2]) {
case 'd': case 'o': case'x':
- cs[0] = 'q';
- cs[1] = p1[2];
- cs[2] = '\0';
+ cs[0] = 'l';
+ cs[1] = 'l';
+ cs[2] = p1[2];
+ cs[3] = '\0';
break;
default:
p1[3] = '\0';