From 52c6a6ac2dbf7264ce348f9abf1360a2c354aea0 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Thu, 3 Oct 2002 22:34:58 +0000 Subject: [PATCH] 2002-10-03 Jeff Johnston * ui-out.h (ui_out_field_fmt_int): New prototype. * ui-out.c (ui_out_field_fmt_int): New function allowing specification of field width and alignment. * stack.c (print_frame_info_base): When printing frame level, use ui_out_field_fmt_int with a width of 2 and left alignment. Fix for PR gdb/192 --- gdb/ChangeLog | 9 +++++++++ gdb/stack.c | 13 +++++++++---- gdb/ui-out.c | 17 +++++++++++++++++ gdb/ui-out.h | 4 ++++ 4 files changed, 39 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 70a67311884..d300975cb41 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,12 @@ +2002-10-03 Jeff Johnston + + * ui-out.h (ui_out_field_fmt_int): New prototype. + * ui-out.c (ui_out_field_fmt_int): New function allowing specification + of field width and alignment. + * stack.c (print_frame_info_base): When printing frame level, use + ui_out_field_fmt_int with a width of 2 and left alignment. Fix for + PR gdb/192 + 2002-10-03 Jeff Johnston * MAINTAINERS: Add self to Write After Approval list. diff --git a/gdb/stack.c b/gdb/stack.c index b1cd9c7edde..f36e651a375 100644 --- a/gdb/stack.c +++ b/gdb/stack.c @@ -358,7 +358,10 @@ print_frame_info_base (struct frame_info *fi, int level, int source, int args) /* Do this regardless of SOURCE because we don't have any source to list for this frame. */ if (level >= 0) - printf_filtered ("#%-2d ", level); + { + ui_out_text (uiout, "#"); + ui_out_field_fmt_int (uiout, 2, ui_left, "level", level); + } annotate_function_call (); printf_filtered ("\n"); annotate_frame_end (); @@ -371,7 +374,10 @@ print_frame_info_base (struct frame_info *fi, int level, int source, int args) /* Do this regardless of SOURCE because we don't have any source to list for this frame. */ if (level >= 0) - printf_filtered ("#%-2d ", level); + { + ui_out_text (uiout, "#"); + ui_out_field_fmt_int (uiout, 2, ui_left, "level", level); + } annotate_signal_handler_caller (); printf_filtered ("\n"); annotate_frame_end (); @@ -548,8 +554,7 @@ print_frame (struct frame_info *fi, if (level >= 0) { ui_out_text (uiout, "#"); - ui_out_field_fmt (uiout, "level", "%-2d", level); - ui_out_spaces (uiout, 1); + ui_out_field_fmt_int (uiout, 2, ui_left, "level", level); } if (addressprint) if (fi->pc != sal.pc || !sal.symtab || source == LOC_AND_ADDRESS) diff --git a/gdb/ui-out.c b/gdb/ui-out.c index 4a4a9228540..da7740f4ca6 100644 --- a/gdb/ui-out.c +++ b/gdb/ui-out.c @@ -485,6 +485,23 @@ ui_out_field_int (struct ui_out *uiout, uo_field_int (uiout, fldno, width, align, fldname, value); } +void +ui_out_field_fmt_int (struct ui_out *uiout, + int input_width, + enum ui_align input_align, + const char *fldname, + int value) +{ + int fldno; + int width; + int align; + struct ui_out_level *current = current_level (uiout); + + verify_field (uiout, &fldno, &width, &align); + + uo_field_int (uiout, fldno, input_width, input_align, fldname, value); +} + void ui_out_field_core_addr (struct ui_out *uiout, const char *fldname, diff --git a/gdb/ui-out.h b/gdb/ui-out.h index 797c2fe960d..c8ed9dd504e 100644 --- a/gdb/ui-out.h +++ b/gdb/ui-out.h @@ -119,6 +119,10 @@ extern struct cleanup *make_cleanup_ui_out_tuple_begin_end (struct ui_out *uiout extern void ui_out_field_int (struct ui_out *uiout, const char *fldname, int value); +extern void ui_out_field_fmt_int (struct ui_out *uiout, int width, + enum ui_align align, const char *fldname, + int value); + extern void ui_out_field_core_addr (struct ui_out *uiout, const char *fldname, CORE_ADDR address); -- 2.30.2