2013-08-29 Phil Muldoon <pmuldoon@redhat.com>
* python/py-framefilter.c (py_print_frame): Remove usage of PyString_AsString. Use python_string_to_host_string instead. Refactor function to work with a string as a new allocation instead of a pointer. (py_print_frame): Ditto. * python/lib/gdb/frames.py (return_list): Cain iterators together instead of adding them as a list. (_sort_list): Call return_list, and remove duplicate code. (execute_frame_filters): Convert iterator to a list with list(). * python/lib/gdb/command/frame_filters.py (SetFrameFilterPriority._set_filter_priority): Convert priority attribute to an integer. * python/lib/gdb/FrameIterator.py (FrameIterator.next): Define wrapper function __next__. * python/lib/gdb/FrameDecorator.py: If basestring not defined, define as "str". 2013-08-29 Phil Muldoon <pmuldoon@redhat.com> * gdb.python/py-framefilter.py (FrameFilter.filter): Check itertools for imap attribute. Otherwise use map(). (ElidingIterator): Define wrapper function __next__. * gdb.python/py-framefilter-mi.exp: Do not use execfile, use exec (open (read ())) instead. * gdb.python/py-framefilter.exp: Ditto. * gdb.python/py-arch.exp: Update print based test to Python 3.x compliance. * gdb.python/py-frame.exp: Ditto. * gdb.python/py-type.exp: Ditto.
This commit is contained in:
parent
ca422daf34
commit
8f28f5226e
13 changed files with 116 additions and 49 deletions
|
@ -1170,13 +1170,17 @@ py_print_frame (PyObject *filter, int flags, enum py_frame_args args_type,
|
|||
|
||||
if (gdbpy_is_string (py_func))
|
||||
{
|
||||
function = PyString_AsString (py_func);
|
||||
char *function_to_free = NULL;
|
||||
|
||||
function = function_to_free =
|
||||
python_string_to_host_string (py_func);
|
||||
|
||||
if (function == NULL)
|
||||
{
|
||||
Py_DECREF (py_func);
|
||||
goto error;
|
||||
}
|
||||
make_cleanup (xfree, function_to_free);
|
||||
}
|
||||
else if (PyLong_Check (py_func))
|
||||
{
|
||||
|
@ -1251,13 +1255,15 @@ py_print_frame (PyObject *filter, int flags, enum py_frame_args args_type,
|
|||
{
|
||||
if (py_fn != Py_None)
|
||||
{
|
||||
char *filename = PyString_AsString (py_fn);
|
||||
char *filename = python_string_to_host_string (py_fn);
|
||||
|
||||
if (filename == NULL)
|
||||
{
|
||||
Py_DECREF (py_fn);
|
||||
goto error;
|
||||
}
|
||||
|
||||
make_cleanup (xfree, filename);
|
||||
TRY_CATCH (except, RETURN_MASK_ALL)
|
||||
{
|
||||
ui_out_wrap_hint (out, " ");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue