]>
Commit | Line | Data |
---|---|---|
3a58abaf AM |
1 | 2004-11-24 Andrew Cagney <cagney@gnu.org> |
2 | ||
3 | * printcmd.c (build_address_symbolic): Find a section for the | |
4 | address. | |
5 | ||
6 | Index: gdb-6.8.50.20081128/gdb/printcmd.c | |
7 | =================================================================== | |
8 | --- gdb-6.8.50.20081128.orig/gdb/printcmd.c 2008-12-04 01:36:05.000000000 +0100 | |
9 | +++ gdb-6.8.50.20081128/gdb/printcmd.c 2008-12-04 01:37:18.000000000 +0100 | |
10 | @@ -616,6 +616,14 @@ build_address_symbolic (CORE_ADDR addr, | |
11 | addr = overlay_mapped_address (addr, section); | |
12 | } | |
13 | } | |
14 | + /* To ensure that the symbol returned belongs to the correct setion | |
15 | + (and that the last [random] symbol from the previous section | |
16 | + isn't returned) try to find the section containing PC. First try | |
17 | + the overlay code (which by default returns NULL); and second try | |
18 | + the normal section code (which almost always succeeds). */ | |
19 | + section = find_pc_overlay (addr); | |
20 | + if (section == NULL) | |
21 | + section = find_pc_section (addr); | |
22 | ||
23 | /* First try to find the address in the symbol table, then | |
24 | in the minsyms. Take the closest one. */ |