gdb: remove unnecessary NULL checks before xfree

I was inspired by a series of patches merged by Alan Modra in the other
projects, so I did the same in GDB with a bit of Coccinelle and grep.

This patch removes the unnecessary NULL checks before calls to xfree.
They are unnecessary because xfree already does a NULL check.  Since
free is supposed to handle NULL values correctly, the NULL check in
xfree itself is also questionable, but I've left it there for now.

gdb/ChangeLog:

	* coffread.c (patch_type): Remove NULL check before xfree.
	* corefile.c (set_gnutarget): Likewise.
	* cp-abi.c (set_cp_abi_as_auto_default): Likewise.
	* exec.c (build_section_table): Likewise.
	* remote.c (remote_target::pass_signals): Likewise.
	* utils.c (n_spaces): Likewise.
	* cli/cli-script.c (document_command): Likewise.
	* i386-windows-tdep.c (core_process_module_section): Likewise.
	* linux-fork.c (struct fork_info) <~fork_info>: Likewise.
This commit is contained in:
Simon Marchi
2020-05-21 13:12:29 -04:00
parent 0490dd41ae
commit 84d53fa9d2
11 changed files with 24 additions and 22 deletions

View File

@@ -1,3 +1,15 @@
2020-05-21 Simon Marchi <simon.marchi@efficios.com>
* coffread.c (patch_type): Remove NULL check before xfree.
* corefile.c (set_gnutarget): Likewise.
* cp-abi.c (set_cp_abi_as_auto_default): Likewise.
* exec.c (build_section_table): Likewise.
* remote.c (remote_target::pass_signals): Likewise.
* utils.c (n_spaces): Likewise.
* cli/cli-script.c (document_command): Likewise.
* i386-windows-tdep.c (core_process_module_section): Likewise.
* linux-fork.c (struct fork_info) <~fork_info>: Likewise.
2020-05-20 Simon Marchi <simon.marchi@efficios.com> 2020-05-20 Simon Marchi <simon.marchi@efficios.com>
* symfile.c (reread_symbols): Clear objfile's section_offsets * symfile.c (reread_symbols): Clear objfile's section_offsets

View File

@@ -1528,8 +1528,7 @@ document_command (const char *comname, int from_tty)
counted_command_line doclines = read_command_lines (prompt.c_str (), counted_command_line doclines = read_command_lines (prompt.c_str (),
from_tty, 0, 0); from_tty, 0, 0);
if (c->doc) xfree ((char *) c->doc);
xfree ((char *) c->doc);
{ {
struct command_line *cl1; struct command_line *cl1;

View File

@@ -1467,8 +1467,7 @@ patch_type (struct type *type, struct type *real_type)
{ {
/* The previous copy of TYPE_NAME is allocated by /* The previous copy of TYPE_NAME is allocated by
process_coff_symbol. */ process_coff_symbol. */
if (target->name ()) xfree ((char *) target->name ());
xfree ((char*) target->name ());
target->set_name (xstrdup (real_target->name ())); target->set_name (xstrdup (real_target->name ()));
} }
} }

View File

@@ -472,8 +472,7 @@ complete_set_gnutarget (struct cmd_list_element *cmd,
void void
set_gnutarget (const char *newtarget) set_gnutarget (const char *newtarget)
{ {
if (gnutarget_string != NULL) xfree (gnutarget_string);
xfree (gnutarget_string);
gnutarget_string = xstrdup (newtarget); gnutarget_string = xstrdup (newtarget);
set_gnutarget_command (NULL, 0, NULL); set_gnutarget_command (NULL, 0, NULL);
} }

View File

@@ -273,10 +273,8 @@ set_cp_abi_as_auto_default (const char *short_name)
_("Cannot find C++ ABI \"%s\" to set it as auto default."), _("Cannot find C++ ABI \"%s\" to set it as auto default."),
short_name); short_name);
if (auto_cp_abi.longname != NULL) xfree ((char *) auto_cp_abi.longname);
xfree ((char *) auto_cp_abi.longname); xfree ((char *) auto_cp_abi.doc);
if (auto_cp_abi.doc != NULL)
xfree ((char *) auto_cp_abi.doc);
auto_cp_abi = *abi; auto_cp_abi = *abi;

View File

@@ -648,8 +648,7 @@ build_section_table (struct bfd *some_bfd, struct target_section **start,
unsigned count; unsigned count;
count = bfd_count_sections (some_bfd); count = bfd_count_sections (some_bfd);
if (*start) xfree (*start);
xfree (* start);
*start = XNEWVEC (struct target_section, count); *start = XNEWVEC (struct target_section, count);
*end = *start; *end = *start;
bfd_map_over_sections (some_bfd, add_to_section_table, (char *) end); bfd_map_over_sections (some_bfd, add_to_section_table, (char *) end);

View File

@@ -142,8 +142,7 @@ core_process_module_section (bfd *abfd, asection *sect, void *obj)
data->module_count++; data->module_count++;
out: out:
if (buf) xfree (buf);
xfree (buf);
return; return;
} }

View File

@@ -61,8 +61,8 @@ struct fork_info
if (savedregs) if (savedregs)
delete savedregs; delete savedregs;
if (filepos)
xfree (filepos); xfree (filepos);
} }
ptid_t ptid = null_ptid; ptid_t ptid = null_ptid;

View File

@@ -2615,8 +2615,7 @@ remote_target::pass_signals (gdb::array_view<const unsigned char> pass_signals)
putpkt (pass_packet); putpkt (pass_packet);
getpkt (&rs->buf, 0); getpkt (&rs->buf, 0);
packet_ok (rs->buf, &remote_protocol_packets[PACKET_QPassSignals]); packet_ok (rs->buf, &remote_protocol_packets[PACKET_QPassSignals]);
if (rs->last_pass_packet) xfree (rs->last_pass_packet);
xfree (rs->last_pass_packet);
rs->last_pass_packet = pass_packet; rs->last_pass_packet = pass_packet;
} }
else else

View File

@@ -3404,8 +3404,7 @@ enum ovly_index
static void static void
simple_free_overlay_table (void) simple_free_overlay_table (void)
{ {
if (cache_ovly_table) xfree (cache_ovly_table);
xfree (cache_ovly_table);
cache_novlys = 0; cache_novlys = 0;
cache_ovly_table = NULL; cache_ovly_table = NULL;
cache_ovly_table_base = 0; cache_ovly_table_base = 0;

View File

@@ -2260,8 +2260,7 @@ n_spaces (int n)
if (n > max_spaces) if (n > max_spaces)
{ {
if (spaces) xfree (spaces);
xfree (spaces);
spaces = (char *) xmalloc (n + 1); spaces = (char *) xmalloc (n + 1);
for (t = spaces + n; t != spaces;) for (t = spaces + n; t != spaces;)
*--t = ' '; *--t = ' ';