Use gdb::byte_vector in load_progress
authorTom Tromey <tom@tromey.com>
Sat, 30 Sep 2017 04:32:00 +0000 (22:32 -0600)
committerTom Tromey <tom@tromey.com>
Tue, 3 Oct 2017 11:33:47 +0000 (05:33 -0600)
This changes load_progress to use gdb::byte_vector, removing a
cleanup.

2017-10-03  Tom Tromey  <tom@tromey.com>

* symfile.c (load_progress): Use gdb::byte_vector.

gdb/ChangeLog
gdb/symfile.c

index 35c7e3c..d5ba398 100644 (file)
@@ -1,5 +1,9 @@
 2017-10-03  Tom Tromey  <tom@tromey.com>
 
+       * symfile.c (load_progress): Use gdb::byte_vector.
+
+2017-10-03  Tom Tromey  <tom@tromey.com>
+
        * mi/mi-main.c (mi_cmd_trace_frame_collected): Remove unused
        declaration.
        * printcmd.c (x_command): Remove unused declaration.
index f6bc378..a741654 100644 (file)
@@ -56,6 +56,7 @@
 #include "stack.h"
 #include "gdb_bfd.h"
 #include "cli/cli-utils.h"
+#include "common/byte-vector.h"
 
 #include <sys/types.h>
 #include <fcntl.h>
@@ -1942,16 +1943,14 @@ load_progress (ULONGEST bytes, void *untyped_arg)
         might add a verify_memory() method to the target vector and
         then use that.  remote.c could implement that method using
         the ``qCRC'' packet.  */
-      gdb_byte *check = (gdb_byte *) xmalloc (bytes);
-      struct cleanup *verify_cleanups = make_cleanup (xfree, check);
+      gdb::byte_vector check (bytes);
 
-      if (target_read_memory (args->lma, check, bytes) != 0)
+      if (target_read_memory (args->lma, check.data (), bytes) != 0)
        error (_("Download verify read failed at %s"),
               paddress (target_gdbarch (), args->lma));
-      if (memcmp (args->buffer, check, bytes) != 0)
+      if (memcmp (args->buffer, check.data (), bytes) != 0)
        error (_("Download verify compare failed at %s"),
               paddress (target_gdbarch (), args->lma));
-      do_cleanups (verify_cleanups);
     }
   totals->data_count += bytes;
   args->lma += bytes;