This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 10/10] Class-ify lm_info_windows
- From: Simon Marchi <simon dot marchi at ericsson dot com>
- To: <gdb-patches at sourceware dot org>
- Cc: Simon Marchi <simon dot marchi at ericsson dot com>
- Date: Wed, 26 Apr 2017 18:51:39 -0400
- Subject: [PATCH 10/10] Class-ify lm_info_windows
- Authentication-results: sourceware.org; auth=none
- Authentication-results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=ericsson.com;
- References: <20170426224706.27988-1-simon.marchi@ericsson.com>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
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.
---
gdb/windows-nat.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index ef1c2914f1..c54c9ee5d5 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,11 @@ 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;
+
+ if (li != NULL)
+ delete li;
+
xfree (so);
}
--
2.11.0