Fix some valgrind errors in the TUI
authorTom Tromey <tom@tromey.com>
Mon, 28 Jan 2019 20:21:35 +0000 (13:21 -0700)
committerTom Tromey <tom@tromey.com>
Sun, 17 Feb 2019 17:39:45 +0000 (10:39 -0700)
commit0c820d679358aa1ec7cd9e33c4bc23a7db964ea1
treef490407b3ae557274e87a0cf61c8e3628610ab3b
parenta008792038c2510800db466897c4bb6305d20042
Fix some valgrind errors in the TUI

The styling series introduced some new errors in the TUI -- the series
changed how source lines are allocated, without updating
tui_set_source_content_nil.

There are several failures but a typical one looks like:

==6274== Use of uninitialised value of size 8
==6274==    at 0x4E4A095: wclrtoeol (in /usr/lib64/libncursesw.so.6.1)
==6274==    by 0x4E47617: waddch (in /usr/lib64/libncursesw.so.6.1)
==6274==    by 0x8325CB: tui_puts_internal(_win_st*, char const*, int*) (tui-io.c:393)
==6274==    by 0x82E89D: tui_file::puts(char const*) (tui-file.c:39)
==6274==    by 0x84BF5F: vfprintf_unfiltered(ui_file*, char const*, __va_list_tag*) (utils.c:2026)

This patch rewrites tui_set_source_content_nil, fixing the bug.

This was also reported as PR tui/24197.

Verified by running valgrind before and after on x86-64 Fedora 29.

gdb/ChangeLog
2019-02-17  Tom Tromey  <tom@tromey.com>

PR tui/24197:
* tui/tui-source.c (tui_set_source_content_nil): Rewrite.
gdb/ChangeLog
gdb/tui/tui-source.c