From 5dc515a6fd4f6bd0d594170dcf32664123b0272e Mon Sep 17 00:00:00 2001 From: Jim Warner Date: Mon, 19 Sep 2022 00:00:00 -0500 Subject: [PATCH] top: harden detailed stats two abreast summary display <=== port of newlib e5386f1f ______________________________ original newlib message When displaying detailed cpu statistics, as opposed to those scalable graphs, only two per line can be shown. Therefore, if we are showing a detail version, our '4' toggle must prematurely revert to single mode display. Conversely, the 't' toggle must also turn off that '4' toggle rather than try to print more than 2 abreast if we're currently executing in detailed statistics mode. Signed-off-by: Jim Warner --- top/top.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/top/top.c b/top/top.c index 08e1c805..92fff6d6 100644 --- a/top/top.c +++ b/top/top.c @@ -5860,6 +5860,9 @@ static void keys_summary (int ch) { if ((w->rc.double_up >= ADJOIN_limit) || ((w->rc.double_up >= smp_num_cpus))) w->rc.double_up = 0; + if ((w->rc.double_up > 1) + && (!w->rc.graph_cpus)) + w->rc.double_up = 0; OFFw(w, (View_CPUSUM | View_CPUNOD)); break; case 'C': @@ -5883,6 +5886,9 @@ static void keys_summary (int ch) { w->rc.graph_cpus = 0; OFFw(w, View_STATES); } + if ((w->rc.double_up > 1) + && (!w->rc.graph_cpus)) + w->rc.double_up = 0; break; default: // keep gcc happy break;