#define TFILE_PID (1)
-static char *trace_filename;
+static gdb::unique_xmalloc_ptr<char> trace_filename;
static int trace_fd = -1;
static off_t trace_frames_offset;
static off_t cur_offset;
gotten = read (trace_fd, readbuf, size);
if (gotten < 0)
- perror_with_name (trace_filename);
+ perror_with_name (trace_filename.get ());
else if (gotten < size)
error (_("Premature end of file while reading trace file"));
}
current_inferior ()->unpush_target (&tfile_ops);
- trace_filename = filename.release ();
+ trace_filename = std::move (filename);
trace_fd = scratch_chan;
/* Make sure this is clear. */
trace_regblock_size = 0;
ts = current_trace_status ();
/* We know we're working with a file. Record its name. */
- ts->filename = trace_filename;
+ ts->filename = trace_filename.get ();
/* Set defaults in case there is no status line. */
ts->running_known = 0;
ts->stop_reason = trace_stop_reason_unknown;
::close (trace_fd);
trace_fd = -1;
- xfree (trace_filename);
- trace_filename = NULL;
+ trace_filename.reset ();
trace_tdesc.clear ();
trace_reset_local_state ();
void
tfile_target::files_info ()
{
- gdb_printf ("\t`%s'\n", trace_filename);
+ gdb_printf ("\t`%s'\n", trace_filename.get ());
}
void