Reduce manual reference counting in py-inferior.c
authorTom Tromey <tromey@adacore.com>
Fri, 28 Jun 2019 14:32:28 +0000 (08:32 -0600)
committerTom Tromey <tromey@adacore.com>
Wed, 10 Jul 2019 18:24:22 +0000 (12:24 -0600)
commit05b08ac1608c8355201db21fe4c871677466f0d5
tree3650b8b89370b689d1505e74a3035a61f7360b60
parent32372d80caba2e223157eca6db2fb0e65369c3c7
Reduce manual reference counting in py-inferior.c

This patch changes py-inferior.c to use gdbpy_ref<> when possible,
reducing the amount of manual reference counting.

Tested on x86-64 Fedora 29.

gdb/ChangeLog
2019-07-10  Tom Tromey  <tromey@adacore.com>

* python/python-internal.h (create_thread_object): Return
gdbpy_ref.
* python/py-infthread.c (create_thread_object): Return gdbpy_ref.
* python/py-inferior.c (struct threadlist_entry): Add
constructor.
<thread_obj>: Now a gdbpy_ref.
(thread_to_thread_object): Update.
(add_thread_object): Use new.
(delete_thread_object): Use delete.
(infpy_threads): Update.
(py_free_inferior): Update.  Construct "inf_obj" after acquiring
GIL.
gdb/ChangeLog
gdb/python/py-inferior.c
gdb/python/py-infthread.c
gdb/python/python-internal.h