From: Tom Tromey Date: Wed, 10 Jun 2009 22:08:19 +0000 (+0000) Subject: * inferior.c (print_inferior): Make a table, not a list. Emit X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8bb318c686da09d7b614eaa7b147137d8747a985;p=binutils-gdb.git * inferior.c (print_inferior): Make a table, not a list. Emit table headers. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d9754e55c2d..000b6e80d1a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2009-06-05 Tom Tromey + + * inferior.c (print_inferior): Make a table, not a list. Emit + table headers. + 2009-06-10 Jonas Maebe * darwin-nat.c (darwin_stop_inferior): Pass 0 as options to diff --git a/gdb/inferior.c b/gdb/inferior.c index 723006b43f2..a99a3be1671 100644 --- a/gdb/inferior.c +++ b/gdb/inferior.c @@ -302,8 +302,31 @@ print_inferior (struct ui_out *uiout, int requested_inferior) { struct inferior *inf; struct cleanup *old_chain; + int inf_count = 0; - old_chain = make_cleanup_ui_out_list_begin_end (uiout, "inferiors"); + /* Compute number of inferiors we will print. */ + for (inf = inferior_list; inf; inf = inf->next) + { + struct cleanup *chain2; + + if (requested_inferior != -1 && inf->num != requested_inferior) + continue; + + ++inf_count; + } + + if (inf_count == 0) + { + ui_out_message (uiout, 0, "No inferiors.\n"); + return; + } + + old_chain = make_cleanup_ui_out_table_begin_end (uiout, 3, inf_count, + "inferiors"); + ui_out_table_header (uiout, 3, ui_right, "current", "Cur"); + ui_out_table_header (uiout, 4, ui_right, "id", "Id"); + ui_out_table_header (uiout, 7, ui_right, "target-id", "PID"); + ui_out_table_body (uiout); for (inf = inferior_list; inf; inf = inf->next) { @@ -315,12 +338,11 @@ print_inferior (struct ui_out *uiout, int requested_inferior) chain2 = make_cleanup_ui_out_tuple_begin_end (uiout, NULL); if (inf->pid == ptid_get_pid (inferior_ptid)) - ui_out_text (uiout, "* "); + ui_out_field_string (uiout, "current", "*"); else - ui_out_text (uiout, " "); + ui_out_field_skip (uiout, "current"); ui_out_field_int (uiout, "id", inf->num); - ui_out_text (uiout, " "); ui_out_field_int (uiout, "target-id", inf->pid); ui_out_text (uiout, "\n");