Fix use-after-free in record_btrace_start_replaying
authorTom Tromey <tom@tromey.com>
Sat, 28 Jul 2018 20:19:09 +0000 (14:19 -0600)
committerTom Tromey <tom@tromey.com>
Tue, 23 Oct 2018 19:45:33 +0000 (13:45 -0600)
commit79b8d3b090bcbfbcffa8bdd195476c6db172273b
tree279d15061079bf9051d8f38331e7f3c993a52083
parentf47998d69f8d290564c022b010e63d5886a1fd7d
Fix use-after-free in record_btrace_start_replaying

-fsanitize=address showed a use-after-free in
record_btrace_start_replaying.  The bug occurred because
get_thread_current_frame returned a frame_info, but this object was
then invalidated before the return by ~scoped_restore_current_thread.

This patch fixes the problem by renaming get_thread_current_frame and
having it return a frame id.

gdb/ChangeLog
2018-10-23  Tom Tromey  <tom@tromey.com>

* record-btrace.c (get_thread_current_frame_id): Rename from
get_thread_current_frame.  Return a frame_id.
(record_btrace_start_replaying): Update.
gdb/ChangeLog
gdb/record-btrace.c