From: Tom Tromey <tom@tromey.com>
To: gdb-patches@sourceware.org
Cc: Tom Tromey <tom@tromey.com>
Subject: [RFA 15/22] Use std::string in macho_symfile_read_all_oso
Date: Tue, 27 Sep 2016 04:41:00 -0000 [thread overview]
Message-ID: <1474949330-4307-16-git-send-email-tom@tromey.com> (raw)
In-Reply-To: <1474949330-4307-1-git-send-email-tom@tromey.com>
This changes macho_symfile_read_all_oso to use std::string. This
avoids a cleanup.
2016-09-26 Tom Tromey <tom@tromey.com>
* machoread.c (macho_symfile_read_all_oso): Use std::string.
---
gdb/ChangeLog | 4 ++++
gdb/machoread.c | 20 +++++++-------------
2 files changed, 11 insertions(+), 13 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 42101fc..3744387 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2016-09-26 Tom Tromey <tom@tromey.com>
+ * machoread.c (macho_symfile_read_all_oso): Use std::string.
+
+2016-09-26 Tom Tromey <tom@tromey.com>
+
* cli/cli-dump.c (dump_memory_to_file): Use std::vector.
(restore_binary_file): Likewise.
diff --git a/gdb/machoread.c b/gdb/machoread.c
index df0333a..eefc1bb 100644
--- a/gdb/machoread.c
+++ b/gdb/machoread.c
@@ -33,6 +33,7 @@
#include "psympriv.h"
#include "complaints.h"
#include "gdb_bfd.h"
+#include <string>
/* If non-zero displays debugging message. */
static unsigned int mach_o_debug_level = 0;
@@ -636,7 +637,6 @@ macho_symfile_read_all_oso (VEC (oso_el) **oso_vector_ptr,
int ix;
VEC (oso_el) *vec = *oso_vector_ptr;
oso_el *oso;
- struct cleanup *cleanup = make_cleanup (null_cleanup, NULL);
/* Sort oso by name so that files from libraries are gathered. */
qsort (VEC_address (oso_el, vec), VEC_length (oso_el, vec),
@@ -652,37 +652,33 @@ macho_symfile_read_all_oso (VEC (oso_el) **oso_vector_ptr,
{
bfd *archive_bfd;
bfd *member_bfd;
- char *archive_name = XNEWVEC (char, pfx_len + 1);
int last_ix;
oso_el *oso2;
int ix2;
- memcpy (archive_name, oso->name, pfx_len);
- archive_name[pfx_len] = '\0';
-
- make_cleanup (xfree, archive_name);
+ std::string archive_name (oso->name, pfx_len);
/* Compute number of oso for this archive. */
for (last_ix = ix;
VEC_iterate (oso_el, vec, last_ix, oso2); last_ix++)
{
- if (strncmp (oso2->name, archive_name, pfx_len) != 0)
+ if (strncmp (oso2->name, archive_name.c_str (), pfx_len) != 0)
break;
}
/* Open the archive and check the format. */
- archive_bfd = gdb_bfd_open (archive_name, gnutarget, -1);
+ archive_bfd = gdb_bfd_open (archive_name.c_str (), gnutarget, -1);
if (archive_bfd == NULL)
{
warning (_("Could not open OSO archive file \"%s\""),
- archive_name);
+ archive_name.c_str ());
ix = last_ix;
continue;
}
if (!bfd_check_format (archive_bfd, bfd_archive))
{
warning (_("OSO archive file \"%s\" not an archive."),
- archive_name);
+ archive_name.c_str ());
gdb_bfd_unref (archive_bfd);
ix = last_ix;
continue;
@@ -693,7 +689,7 @@ macho_symfile_read_all_oso (VEC (oso_el) **oso_vector_ptr,
if (member_bfd == NULL)
{
warning (_("Could not read archive members out of "
- "OSO archive \"%s\""), archive_name);
+ "OSO archive \"%s\""), archive_name.c_str ());
gdb_bfd_unref (archive_bfd);
ix = last_ix;
continue;
@@ -757,8 +753,6 @@ macho_symfile_read_all_oso (VEC (oso_el) **oso_vector_ptr,
ix++;
}
}
-
- do_cleanups (cleanup);
}
/* DSYM (debug symbols) files contain the debug info of an executable.
--
2.7.4
next prev parent reply other threads:[~2016-09-27 4:41 UTC|newest]
Thread overview: 121+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-27 4:49 [RFA 00/22] More C++-ification Tom Tromey
2016-09-27 4:41 ` Tom Tromey [this message]
2016-10-09 17:28 ` [RFA 15/22] Use std::string in macho_symfile_read_all_oso Pedro Alves
2016-10-10 22:40 ` Tom Tromey
2016-10-10 22:46 ` Pedro Alves
2016-09-27 4:41 ` [RFA 07/22] Change scoped_minimal_symbol_reader to store objfile Tom Tromey
2016-09-29 9:19 ` Trevor Saunders
2016-09-30 21:41 ` Tom Tromey
2016-09-27 4:42 ` [RFA 16/22] Use std::vector in elf_read_minimal_symbols Tom Tromey
2016-10-09 17:30 ` Pedro Alves
2016-09-27 4:42 ` [RFA 19/22] Convert tid_range_parser to class Tom Tromey
2016-09-30 1:41 ` Pedro Alves
2016-09-30 14:52 ` Tom Tromey
[not found] ` <926126cb-b3c5-340b-ac1c-5bc14ca41bf9@redhat.com>
2016-10-04 19:24 ` Pedro Alves
2016-10-04 23:09 ` Pedro Alves
2016-10-05 2:16 ` Trevor Saunders
2016-10-12 2:12 ` Tom Tromey
2016-10-13 1:06 ` Pedro Alves
2016-09-27 4:43 ` [RFA 20/22] Initial conversion of dwarf_expr_ctx Tom Tromey
2016-10-09 17:40 ` Pedro Alves
2016-09-27 4:45 ` [RFA 21/22] Convert DWARF expr functions to methods Tom Tromey
2016-10-09 19:18 ` Pedro Alves
2016-09-27 4:47 ` [RFA 04/22] Use scoped_restore for current_ui Tom Tromey
2016-09-27 4:47 ` [RFA 22/22] Convert dwarf_expr_context_funcs to methods Tom Tromey
2016-10-09 19:11 ` Pedro Alves
2016-10-10 18:31 ` Pedro Alves
2016-10-10 19:33 ` Pedro Alves
2016-09-27 4:47 ` [RFA 05/22] Turn wchar iterator into a class Tom Tromey
2016-10-06 1:01 ` Pedro Alves
2016-09-27 4:47 ` [RFA 02/22] Use RAII to save and restore scalars Tom Tromey
2016-09-27 10:24 ` Trevor Saunders
2016-09-30 1:40 ` Pedro Alves
2016-09-30 9:22 ` Pedro Alves
2016-09-30 15:00 ` Tom Tromey
2016-09-30 23:50 ` Pedro Alves
2016-09-30 15:44 ` Tom Tromey
2016-09-30 23:51 ` Pedro Alves
2016-10-01 3:55 ` Tom Tromey
2016-10-01 4:23 ` Tom Tromey
2016-10-01 10:33 ` Pedro Alves
2016-10-02 17:11 ` Tom Tromey
2016-10-05 0:06 ` Pedro Alves
2016-10-12 22:36 ` Tom Tromey
2016-09-27 4:48 ` [RFA 09/22] Remove make_cleanup_restore_current_ui Tom Tromey
2016-09-29 11:55 ` Trevor Saunders
2016-10-01 3:47 ` Tom Tromey
2016-10-01 4:29 ` Simon Marchi
2016-10-06 2:53 ` Tom Tromey
2016-10-06 1:24 ` Pedro Alves
2016-10-06 2:52 ` Tom Tromey
2016-10-09 4:31 ` Simon Marchi
2016-10-09 15:10 ` Tom Tromey
2016-10-09 19:20 ` Pedro Alves
2016-10-12 22:43 ` Tom Tromey
2016-10-13 1:28 ` Pedro Alves
2016-10-13 6:11 ` Eli Zaretskii
2016-10-13 10:16 ` Pedro Alves
2016-10-13 13:53 ` Eli Zaretskii
2016-10-13 14:26 ` Pedro Alves
2016-10-13 14:46 ` Eli Zaretskii
[not found] ` <9d9dca17-56a6-6c0a-44bb-efc425f24d8d@redhat.com>
2016-10-13 15:19 ` Eli Zaretskii
2016-10-13 15:43 ` Pedro Alves
2016-10-13 15:48 ` Pedro Alves
2016-10-17 23:43 ` Go C++11? (was: Re: [RFA 09/22] Remove make_cleanup_restore_current_ui) Pedro Alves
2016-10-18 6:14 ` Eli Zaretskii
2016-10-19 18:02 ` Go C++11? Luis Machado
2016-10-19 22:34 ` Pedro Alves
2016-10-13 15:27 ` [RFA 09/22] Remove make_cleanup_restore_current_ui Pedro Alves
2016-10-13 14:26 ` Trevor Saunders
2016-09-27 4:48 ` [RFA 01/22] Change selttest.c to use use std::vector Tom Tromey
2016-09-27 8:50 ` Trevor Saunders
2016-09-27 16:44 ` Tom Tromey
2016-09-28 14:58 ` Trevor Saunders
2016-09-29 8:59 ` Tom Tromey
2016-10-06 0:18 ` Pedro Alves
2016-10-06 0:39 ` Pedro Alves
2016-09-30 14:43 ` Simon Marchi
2016-09-30 21:40 ` Tom Tromey
2016-10-06 0:45 ` Pedro Alves
2016-09-27 4:48 ` [RFA 03/22] Use scoped_restore for ui_file Tom Tromey
2016-10-01 4:28 ` Simon Marchi
2016-10-01 5:22 ` Tom Tromey
2016-10-01 11:47 ` Simon Marchi
2016-10-13 14:56 ` Tom Tromey
2016-09-27 4:48 ` [RFA 08/22] Record minimal symbols directly in reader Tom Tromey
2016-10-01 4:29 ` Simon Marchi
2016-10-06 1:12 ` Pedro Alves
2016-09-27 4:50 ` [RFA 17/22] Remove make_cleanup_restore_current_uiout Tom Tromey
2016-09-29 14:35 ` Trevor Saunders
2016-09-29 15:23 ` Tom Tromey
2016-09-29 17:55 ` Simon Marchi
2016-09-29 20:34 ` Tom Tromey
2016-09-30 2:45 ` Pedro Alves
2016-09-30 23:48 ` Tom Tromey
2016-09-30 23:52 ` Pedro Alves
2016-09-27 4:51 ` [RFA 12/22] Remove unnecessary null_cleanup Tom Tromey
2016-10-09 17:06 ` Pedro Alves
2016-09-27 4:51 ` [RFA 13/22] Remove unnecessary cleanup from stabsread.c Tom Tromey
2016-09-30 16:19 ` Tom Tromey
2016-10-09 17:07 ` Pedro Alves
2016-09-27 4:51 ` [RFA 18/22] Some cleanup removal in dwarf2loc.c Tom Tromey
2016-10-09 17:37 ` Pedro Alves
2016-09-27 4:51 ` [RFA 14/22] Replace two xmallocs with vector Tom Tromey
2016-10-09 17:20 ` Pedro Alves
2016-10-12 22:39 ` Tom Tromey
2016-10-13 1:17 ` Pedro Alves
2016-10-13 2:04 ` Tom Tromey
2016-10-13 15:15 ` Tom Tromey
2016-10-13 15:26 ` Trevor Saunders
2016-09-27 4:52 ` [RFA 10/22] Remove some cleanups in MI Tom Tromey
2016-10-06 1:42 ` Pedro Alves
2016-09-27 4:52 ` [RFA 06/22] Introduce scoped_minimal_symbol_reader Tom Tromey
2016-10-06 1:10 ` Pedro Alves
2016-10-06 15:37 ` Tom Tromey
2016-10-10 23:06 ` Tom Tromey
2016-10-10 23:26 ` Pedro Alves
2016-09-27 8:32 ` [RFA 11/22] Change command stats reporting to use class Tom Tromey
2016-10-09 17:01 ` Pedro Alves
2016-10-11 17:31 ` Tom Tromey
[not found] ` <e06fbe1ea266e078eaff6bdc98e48efa@simark.ca>
2016-10-08 16:42 ` [RFA 00/22] More C++-ification Pedro Alves
2016-10-09 2:09 ` Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1474949330-4307-16-git-send-email-tom@tromey.com \
--to=tom@tromey.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox