]> granicus.if.org Git - procps-ng/commitdiff
0113-top: Impose a minimum on Screen_cols.
authorQualys Security Advisory <qsa@qualys.com>
Thu, 1 Jan 1970 00:00:00 +0000 (00:00 +0000)
committerCraig Small <csmall@enc.com.au>
Sat, 9 Jun 2018 11:35:20 +0000 (21:35 +1000)
The safety of the critical function task_show() depends on the sanity of
Screen_cols. Just copy the tests on w_cols to Screen_cols (from the same
function adj_geometry()).

top/top.c

index 976132dd9be3cdc9b765ed5b1f4f2a30c6a8fe50..2af2a849e36b48486ddd410370b4139f55783bed 100644 (file)
--- a/top/top.c
+++ b/top/top.c
@@ -1750,7 +1750,8 @@ static void adj_geometry (void) {
 #endif
 
    // we might disappoint some folks (but they'll deserve it)
-   if (SCREENMAX < Screen_cols) Screen_cols = SCREENMAX;
+   if (Screen_cols > SCREENMAX) Screen_cols = SCREENMAX;
+   if (Screen_cols < W_MIN_COL) Screen_cols = W_MIN_COL;
 
    if (!w_set) {
       if (Width_mode > 0)              // -w with arg, we'll try to honor