PR python/18565 - make Frame.function work for inline frames
PR python/18565 notes that calling frame filters don't work properly for inlined functions. This happens because Frame.function on an inline frame will yield the wrong result. This patch changes this code to use find_frame_funname instead, which handles inline frames properly. Built and regtested on x86-64 Fedora 24. 2016-08-03 Tom Tromey <tom@tromey.com> PR python/18565: * python/py-frame.c (frapy_function): Use find_frame_funname. 2016-08-03 Tom Tromey <tom@tromey.com> PR python/18565: * gdb.python/py-frame-inline.exp: Add Frame.function test.
This commit is contained in:
parent
d10153cfc6
commit
282a0691a7
4 changed files with 19 additions and 1 deletions
|
@ -340,9 +340,13 @@ frapy_function (PyObject *self, PyObject *args)
|
|||
|
||||
TRY
|
||||
{
|
||||
char *funname;
|
||||
enum language funlang;
|
||||
|
||||
FRAPY_REQUIRE_VALID (self, frame);
|
||||
|
||||
sym = find_pc_function (get_frame_address_in_block (frame));
|
||||
find_frame_funname (frame, &funname, &funlang, &sym);
|
||||
xfree (funname);
|
||||
}
|
||||
CATCH (except, RETURN_MASK_ALL)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue