[v3,1/2] Emit inferior, thread and frame selection events to all UIs
Commit Message
Hi!
On Sat, 24 Sep 2016 16:13:30 -0400, Simon Marchi <simon.marchi@polymtl.ca> wrote:
> --- a/gdb/inferior.c
> +++ b/gdb/inferior.c
> +void
> +print_selected_inferior (struct ui_out *uiout)
> +{
> + char buf[PATH_MAX + 256];
> + struct inferior *inf = current_inferior ();
> +
> + xsnprintf (buf, sizeof (buf),
> + _("[Switching to inferior %d [%s] (%s)]\n"),
> + inf->num,
> + inferior_pid_to_str (inf->pid),
> + (inf->pspace->pspace_exec_filename != NULL
> + ? inf->pspace->pspace_exec_filename
> + : _("<noexec>")));
> + ui_out_text (uiout, buf);
> +}
> +
On GNU/Hurd, there is no "#define PATH_MAX", so this fails to build.
(I'm aware that there is other PATH_MAX usage in GDB sources, which we
ought to fix at some point, for example in gdbserver -- which is not yet
enabled for GNU/Hurd.)
Unless I miss something, this issue could be addressed by simply using
ui_out_message instead of ui_out_text with a temporary "buf" -- OK to
push the following?
Grüße
Thomas
Comments
On 2016-12-08 07:01, Thomas Schwinge wrote:
> On GNU/Hurd, there is no "#define PATH_MAX", so this fails to build.
> (I'm aware that there is other PATH_MAX usage in GDB sources, which we
> ought to fix at some point, for example in gdbserver -- which is not
> yet
> enabled for GNU/Hurd.)
>
> Unless I miss something, this issue could be addressed by simply using
> ui_out_message instead of ui_out_text with a temporary "buf" -- OK to
> push the following?
>
> --- gdb/inferior.c
> +++ gdb/inferior.c
> @@ -556,17 +556,15 @@ inferior_pid_to_str (int pid)
> void
> print_selected_inferior (struct ui_out *uiout)
> {
> - char buf[PATH_MAX + 256];
> struct inferior *inf = current_inferior ();
>
> - xsnprintf (buf, sizeof (buf),
> - _("[Switching to inferior %d [%s] (%s)]\n"),
> - inf->num,
> - inferior_pid_to_str (inf->pid),
> - (inf->pspace->pspace_exec_filename != NULL
> - ? inf->pspace->pspace_exec_filename
> - : _("<noexec>")));
> - ui_out_text (uiout, buf);
> + ui_out_message (uiout,
> + _("[Switching to inferior %d [%s] (%s)]\n"),
> + inf->num,
> + inferior_pid_to_str (inf->pid),
> + (inf->pspace->pspace_exec_filename != NULL
> + ? inf->pspace->pspace_exec_filename
> + : _("<noexec>")));
> }
>
> /* Prints the list of inferiors and their details on UIOUT. This is a
Yeah it looks much better. Also, if you want to factor out complexity
from this big one liner by using temporary variables, I think it would
improve it further.
Thanks,
Simon
@@ -556,17 +556,15 @@ inferior_pid_to_str (int pid)
void
print_selected_inferior (struct ui_out *uiout)
{
- char buf[PATH_MAX + 256];
struct inferior *inf = current_inferior ();
- xsnprintf (buf, sizeof (buf),
- _("[Switching to inferior %d [%s] (%s)]\n"),
- inf->num,
- inferior_pid_to_str (inf->pid),
- (inf->pspace->pspace_exec_filename != NULL
- ? inf->pspace->pspace_exec_filename
- : _("<noexec>")));
- ui_out_text (uiout, buf);
+ ui_out_message (uiout,
+ _("[Switching to inferior %d [%s] (%s)]\n"),
+ inf->num,
+ inferior_pid_to_str (inf->pid),
+ (inf->pspace->pspace_exec_filename != NULL
+ ? inf->pspace->pspace_exec_filename
+ : _("<noexec>")));
}
/* Prints the list of inferiors and their details on UIOUT. This is a