spdk_top:fix a bug of disabled Columns.
Return the previous state of the column when we press Q or ESC. Fixes issue #1829 Signed-off-by: ChengqiangMeng <chengqiangx.meng@intel.com> Change-Id: If049c0dcebfa3d71ac9c5266541083108df1d883 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6893 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: GangCao <gang.cao@intel.com>
This commit is contained in:
parent
f1f4f7d3bc
commit
2770a5d7f8
@ -1598,6 +1598,7 @@ filter_columns(uint8_t tab)
|
||||
ITEM *cur;
|
||||
void (*p)(enum tabs tab);
|
||||
uint8_t current_index, len = 0;
|
||||
bool disabled[TABS_COL_COUNT];
|
||||
|
||||
for (i = 0; col_desc[i].name != NULL; ++i) {
|
||||
len = spdk_max(col_desc[i].name_len, len);
|
||||
@ -1628,6 +1629,10 @@ filter_columns(uint8_t tab)
|
||||
goto fail;
|
||||
}
|
||||
|
||||
for (int i = 0; i < TABS_COL_COUNT; i++) {
|
||||
disabled[i] = col_desc[i].disabled;
|
||||
}
|
||||
|
||||
while (!stop_loop) {
|
||||
c = wgetch(filter_win);
|
||||
|
||||
@ -1640,6 +1645,17 @@ filter_columns(uint8_t tab)
|
||||
break;
|
||||
case 27: /* ESC */
|
||||
case 'q':
|
||||
for (int i = 0; i < TABS_COL_COUNT; i++) {
|
||||
cur = current_item(my_menu);
|
||||
col_desc[i].disabled = disabled[i];
|
||||
|
||||
my_items = refresh_filtering_menu(&my_menu, filter_win, tab, my_items, elements,
|
||||
item_index(cur) + 1);
|
||||
if (my_items == NULL || my_menu == NULL) {
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
stop_loop = true;
|
||||
break;
|
||||
case ' ': /* Space */
|
||||
|
Loading…
Reference in New Issue
Block a user