* cli/cli-logging.c: New file.
	* cli-out.c (struct ui_out_data): Add original_stream.
	(cli_redirect): New function.
	(cli_ui_out_impl): Add cli_redirect.
	(cli_out_new): Initialize original_stream.
	* ui-out.c (default_ui_out_impl): Add NULL for redirect member.
	(uo_redirect, ui_out_redirect): New.
	* ui-out.h (struct ui_out_impl): Add redirect member.
	(redirect_ftype): New.
	(ui_out_redirect): Add prototype.
	* Makefile.in: Add rules for cli-logging.c.
	* NEWS: Mention "set logging".
mi/
	* mi-out.c (mi_ui_out_impl): Add NULL for redirect member.
tui/
	* tui-out.c (tui_ui_out_impl): Add NULL for redirect member.
doc/
	* gdb.texinfo (Logging output): New chapter.
This commit is contained in:
Daniel Jacobowitz
2003-06-28 16:19:07 +00:00
parent 1579bae1cd
commit 0fac0b4199
13 changed files with 316 additions and 1 deletions

View File

@@ -231,6 +231,8 @@ typedef void (message_ftype) (struct ui_out * uiout, int verbosity,
const char *format, va_list args);
typedef void (wrap_hint_ftype) (struct ui_out * uiout, char *identstring);
typedef void (flush_ftype) (struct ui_out * uiout);
typedef int (redirect_ftype) (struct ui_out * uiout,
struct ui_file * outstream);
/* ui-out-impl */
@@ -254,6 +256,7 @@ struct ui_out_impl
message_ftype *message;
wrap_hint_ftype *wrap_hint;
flush_ftype *flush;
redirect_ftype *redirect;
int is_mi_like_p;
};
@@ -266,4 +269,8 @@ extern struct ui_out *ui_out_new (struct ui_out_impl *impl,
struct ui_out_data *data,
int flags);
/* Redirect the ouptut of a ui_out object temporarily. */
extern int ui_out_redirect (struct ui_out *uiout, struct ui_file *outstream);
#endif /* UI_OUT_H */