binutils-gdb/gdb/python
Kevin Buettner 26c897821b Define unique_ptr specialization for Py_buffer.
This patch causes PyBuffer_Release() to be called when the associated
buffer goes out of scope.  I've been using it as follows:

 ...
 Py_buffer_up buffer_up;
 Py_buffer py_buf;

 if (PyObject_CheckBuffer (obj)
     && PyObject_GetBuffer (obj, &py_buf, PyBUF_SIMPLE) == 0)
   {
      /* Got a buffer, py_buf, out of obj.  Cause it to released
         when it goes out of scope.  */
     buffer_up.reset (&py_buf);
   }
   ...

This snippet of code was taken directly from an upcoming patch to
python-value.c.

gdb/ChangeLog:

	* python/python-internal.h (Py_buffer_deleter): New struct.
	(Py_buffer_up): New typedef.
2019-02-26 10:21:22 -07:00
..
lib/gdb
py-all-events.def
py-arch.c
py-auto-load.c
py-block.c
py-bpevent.c
py-breakpoint.c
py-cmd.c
py-continueevent.c
py-event-types.def
py-event.c
py-event.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-events.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-evtregistry.c
py-evts.c
py-exitedevent.c
py-finishbreakpoint.c
py-frame.c
py-framefilter.c
py-function.c
py-gdb-readline.c
py-inferior.c
py-infevents.c
py-infthread.c
py-instruction.c
py-instruction.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-lazy-string.c
py-linetable.c
py-newobjfileevent.c
py-objfile.c
py-param.c
py-prettyprint.c
py-progspace.c
py-record-btrace.c
py-record-btrace.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-record-full.c
py-record-full.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-record.c
py-record.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-ref.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-signalevent.c
py-stopevent.c
py-stopevent.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00
py-symbol.c
py-symtab.c
py-threadevent.c
py-type.c
py-unwind.c
py-utils.c
py-value.c
py-varobj.c
py-xmethods.c
python-config.py
python-internal.h Define unique_ptr specialization for Py_buffer. 2019-02-26 10:21:22 -07:00
python.c
python.h Normalize include guards in gdb 2019-02-07 03:27:23 -07:00