PR mi/18833 gdb.execute ("set param value", to_string=True) will crash gdb if using MI
authorDoug Evans <dje@google.com>
Tue, 18 Aug 2015 21:02:03 +0000 (14:02 -0700)
committerDoug Evans <dje@google.com>
Tue, 18 Aug 2015 21:02:03 +0000 (14:02 -0700)
commit4d6cceb4e40a057dbe4d9ad94b0641d5f4725c09
tree8c306120303ae7f18571664c14152cb8ed7f32ff
parent4e1626f5a8d73573d6cf593fabe5bc80f7b3e04e
PR mi/18833 gdb.execute ("set param value", to_string=True) will crash gdb if using MI

gdb/ChangeLog:

* cli/cli-logging.c (pop_output_files): Don't restore redirection
if MI-like.
* mi/mi-out.c: #include "vec.h".
(ui_filep): New type.
(DEV_VEC_P (ui_filep)): New type.
(struct ui_out_data) <buffer, original_buffer>: Delete.
(struct ui_out_data) <streams>: New member.
(mi_ui_out_impl): Add data_destroy field.
(mi_field_string, mi_field_fmt): Update.
(mi_flush, mi_redirect, field_separator): Update.
(mi_open, mi_close): Update.
(mi_out_buffered, mi_out_rewind, mi_out_put): Update.
(mi_out_data_ctor, mi_out_data_dtor): New functions.
(mi_out_new): Call mi_out_data_ctor.

testsuite/gdb/ChangeLog:

* lib/gdb.exp (skip_python_tests_prompt): Renamed from
skip_python_tests.  New arg prompt_regexp.
(skip_python_tests): New function.
* lib/mi-support.exp (mi_skip_python_tests): New function.
* gdb.python/py-mi-objfile-gdb.py: New file.
* gdb.python/py-mi-objfile.c: New file.
* gdb.python/py-mi-objfile.exp: New file.
gdb/ChangeLog
gdb/cli/cli-logging.c
gdb/mi/mi-out.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-mi-objfile-gdb.py [new file with mode: 0644]
gdb/testsuite/gdb.python/py-mi-objfile.c [new file with mode: 0644]
gdb/testsuite/gdb.python/py-mi-objfile.exp [new file with mode: 0644]
gdb/testsuite/lib/gdb.exp
gdb/testsuite/lib/mi-support.exp