Do not emit style escape sequences to log file
authorTom Tromey <tromey@adacore.com>
Tue, 30 Apr 2019 17:17:15 +0000 (11:17 -0600)
committerTom Tromey <tromey@adacore.com>
Fri, 14 Jun 2019 20:13:29 +0000 (14:13 -0600)
commit0735b091aba72d4b35aebb671a02c5cb4a837fe9
treec261406309225cb02197ba53b895a8030f0fc442
parent52ce35e2894e55cea94011dda6443be51e154f37
Do not emit style escape sequences to log file

PR gdb/24502 requests that the "set logging" log file not contain
style escape sequences emitted by gdb.

This seemed like a reasonable request to me, so this patch implements
filtering for the log file.

This also updates a comment in ui-style.h that I noticed while writing
the patch.

Tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-06-14  Tom Tromey  <tromey@adacore.com>

PR gdb/24502:
* ui-style.h (skip_ansi_escape): Update comment.
* ui-file.h (class no_terminal_escape_file): New class.
* ui-file.c (no_terminal_escape_file::write)
(no_terminal_escape_file::puts): New methods.
* cli/cli-logging.c (handle_redirections): Use
no_terminal_escape_file.

gdb/testsuite/ChangeLog
2019-06-14  Tom Tromey  <tromey@adacore.com>

PR gdb/24502:
* gdb.base/style-logging.exp: New file.
gdb/ChangeLog
gdb/cli/cli-logging.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/style-logging.exp [new file with mode: 0644]
gdb/ui-file.c
gdb/ui-file.h
gdb/ui-style.h