diff options
author | Simon Marchi <simon.marchi@ericsson.com> | 2017-04-28 17:16:18 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@ericsson.com> | 2017-04-28 17:16:18 -0400 |
commit | f8fdb78eafb3f70661f6e4a43beb004dde9e0921 (patch) | |
tree | b47a735cf767a21b80837df8f0fea636c1633a51 /gdb/windows-nat.c | |
parent | 9ccbfd7bc1b7228d67f2d4ca878224d493918264 (diff) | |
download | gdb-f8fdb78eafb3f70661f6e4a43beb004dde9e0921.zip gdb-f8fdb78eafb3f70661f6e4a43beb004dde9e0921.tar.gz gdb-f8fdb78eafb3f70661f6e4a43beb004dde9e0921.tar.bz2 |
Class-ify lm_info_windows
This patch makes lm_info_windows a "real" class. It initializes the field
and replaces XCNEW/xfree with new/delete.
gdb/ChangeLog:
* windows-nat.c (struct lm_info_windows): Initialize field.
(windows_make_so): Allocate lm_info_windows with new.
(windows_free_so): Free lm_info_windows with delete.
Diffstat (limited to 'gdb/windows-nat.c')
-rw-r--r-- | gdb/windows-nat.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index ef1c291..6a5a295 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-nat.c @@ -587,7 +587,7 @@ struct safe_symbol_file_add_args /* Maintain a linked list of "so" information. */ struct lm_info_windows : public lm_info_base { - LPVOID load_addr; + LPVOID load_addr = 0; }; static struct so_list solib_start, *solib_end; @@ -645,7 +645,7 @@ windows_make_so (const char *name, LPVOID load_addr) } #endif so = XCNEW (struct so_list); - lm_info_windows *li = XCNEW (struct lm_info_windows); + lm_info_windows *li = new lm_info_windows; so->lm_info = li; li->load_addr = load_addr; strcpy (so->so_original_name, name); @@ -784,8 +784,9 @@ handle_load_dll (void *dummy) static void windows_free_so (struct so_list *so) { - if (so->lm_info) - xfree (so->lm_info); + lm_info_windows *li = (lm_info_windows *) so->lm_info; + + delete li; xfree (so); } |