xbps-query(8): do not truncate output if stdout is not a tty.
This commit is contained in:
parent
2bead22e56
commit
bc97851fdb
4
NEWS
4
NEWS
@ -1,5 +1,9 @@
|
|||||||
xbps-0.45 (???):
|
xbps-0.45 (???):
|
||||||
|
|
||||||
|
* xbps-query(8): if piping or redirecting not a tty, don't enforce any columns limit.
|
||||||
|
We do not want truncation in that case; this makes it possible to pipe the output
|
||||||
|
to a pager without truncation.
|
||||||
|
|
||||||
* libfetch: added support for keep-alive connections even if the HTTP server returns
|
* libfetch: added support for keep-alive connections even if the HTTP server returns
|
||||||
304 (Not Modified). This is a noticable performance improvement for `xbps-install -S`.
|
304 (Not Modified). This is a noticable performance improvement for `xbps-install -S`.
|
||||||
|
|
||||||
|
@ -41,10 +41,16 @@ get_maxcols(void)
|
|||||||
{
|
{
|
||||||
struct winsize ws;
|
struct winsize ws;
|
||||||
|
|
||||||
if (ioctl(STDOUT_FILENO, TIOCGWINSZ, &ws) == 0)
|
if (!isatty(STDOUT_FILENO) && errno == ENOTTY) {
|
||||||
return ws.ws_col ? ws.ws_col : 80;
|
/* not a TTY, don't use any limit */
|
||||||
|
return 0;
|
||||||
return 80;
|
}
|
||||||
|
if (ioctl(STDOUT_FILENO, TIOCGWINSZ, &ws) == -1) {
|
||||||
|
/* 80x24 terminal */
|
||||||
|
return 80;
|
||||||
|
}
|
||||||
|
/* TTY columns */
|
||||||
|
return ws.ws_col;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -72,7 +72,7 @@ list_pkgs_in_dict(struct xbps_handle *xhp _unused,
|
|||||||
|
|
||||||
tmp[i] = '\0';
|
tmp[i] = '\0';
|
||||||
len = strlen(tmp) + strlen(short_desc) + 2;
|
len = strlen(tmp) + strlen(short_desc) + 2;
|
||||||
if (len > lpc->maxcols) {
|
if (lpc->maxcols && len > lpc->maxcols) {
|
||||||
out = malloc(lpc->maxcols+1);
|
out = malloc(lpc->maxcols+1);
|
||||||
assert(out);
|
assert(out);
|
||||||
snprintf(out, lpc->maxcols - 3,
|
snprintf(out, lpc->maxcols - 3,
|
||||||
|
@ -80,7 +80,7 @@ print_results(struct xbps_handle *xhp, struct search_data *sd)
|
|||||||
inststr = "[-]";
|
inststr = "[-]";
|
||||||
|
|
||||||
len = strlen(inststr) + strlen(tmp) + strlen(desc) + 3;
|
len = strlen(inststr) + strlen(tmp) + strlen(desc) + 3;
|
||||||
if ((int)len > sd->maxcols) {
|
if (sd->maxcols && (int)len > sd->maxcols) {
|
||||||
out = malloc(sd->maxcols+1);
|
out = malloc(sd->maxcols+1);
|
||||||
assert(out);
|
assert(out);
|
||||||
snprintf(out, sd->maxcols-3, "%s %s %s",
|
snprintf(out, sd->maxcols-3, "%s %s %s",
|
||||||
|
Loading…
Reference in New Issue
Block a user