summaryrefslogtreecommitdiff
path: root/src/select.cc
diff options
context:
space:
mode:
authorCraig Earls <enderw88@gmail.com>2014-11-07 18:21:13 -0700
committerCraig Earls <enderw88@gmail.com>2014-11-07 18:21:13 -0700
commitaf15887ecb32cdacea8a0a487f8b94dd81f98383 (patch)
treecccfad949f3a2511bc0ef5071b818503290b9842 /src/select.cc
parent1bd67755fa3127d80b7534d15f1f9de1b477c19a (diff)
parent62e1354e0bb9bef2efaed14e3543199880026491 (diff)
downloadledger-af15887ecb32cdacea8a0a487f8b94dd81f98383.tar.gz
ledger-af15887ecb32cdacea8a0a487f8b94dd81f98383.tar.bz2
ledger-af15887ecb32cdacea8a0a487f8b94dd81f98383.zip
Merge branch 'master' of https://github.com/ledger/ledger
Diffstat (limited to 'src/select.cc')
-rw-r--r--src/select.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/select.cc b/src/select.cc
index 45ae34be..a9e943ab 100644
--- a/src/select.cc
+++ b/src/select.cc
@@ -145,10 +145,17 @@ value_t select_command(call_scope_t& args)
string thus_far = "";
std::size_t cols = 0;
+#if HAVE_IOCTL
+ struct winsize ws;
+#endif
if (report.HANDLED(columns_))
cols = lexical_cast<std::size_t>(report.HANDLER(columns_).value);
else if (const char * columns_env = std::getenv("COLUMNS"))
cols = lexical_cast<std::size_t>(columns_env);
+#if HAVE_IOCTL
+ else if (ioctl(STDIN_FILENO, TIOCGWINSZ, &ws) != -1)
+ cols = ws.ws_col;
+#endif
else
cols = 80;