aboutsummaryrefslogtreecommitdiff
path: root/gdb/win32-nat.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/win32-nat.c')
-rw-r--r--gdb/win32-nat.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/gdb/win32-nat.c b/gdb/win32-nat.c
index 72e8c3f..c2227cd 100644
--- a/gdb/win32-nat.c
+++ b/gdb/win32-nat.c
@@ -842,14 +842,17 @@ solib_symbols_add (char *name, int from_tty, CORE_ADDR load_addr)
else
{
/* Fallback on handling just the .text section. */
- struct section_addr_info section_addrs;
+ struct section_addr_info *section_addrs;
+ struct cleanup *my_cleanups;
- memset (&section_addrs, 0, sizeof (section_addrs));
- section_addrs.other[0].name = ".text";
- section_addrs.other[0].addr = load_addr;
+ section_addrs = alloc_section_addr_info (1);
+ my_cleanups = make_cleanup (xfree, section_addrs);
+ section_addrs->other[0].name = ".text";
+ section_addrs->other[0].addr = load_addr;
result = safe_symbol_file_add (name, from_tty, &section_addrs,
0, OBJF_SHARED);
+ do_cleanups (my_cleanups);
}
return result;