Skip to content

Commit c3c9c46

Browse files
nickysnalehander92
authored andcommitted
feat(stream_api): removed the parameter path from finish_writing_trace_metadata; use the path, specified in the call to begin_writing_trace_metadata
1 parent 36ac98f commit c3c9c46

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

runtime_tracing/src/tracer.rs

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ pub trait TraceWriter {
8282
fn add_event(&mut self, event: TraceLowLevelEvent);
8383
fn append_events(&mut self, events: &mut Vec<TraceLowLevelEvent>);
8484

85-
fn finish_writing_trace_metadata(&self, path: &Path) -> Result<(), Box<dyn Error>>;
85+
fn finish_writing_trace_metadata(&self) -> Result<(), Box<dyn Error>>;
8686
fn finish_writing_trace_events(&self) -> Result<(), Box<dyn Error>>;
8787
fn finish_writing_trace_paths(&self, path: &Path) -> Result<(), Box<dyn Error>>;
8888
}
@@ -414,15 +414,19 @@ impl TraceWriter for NonStreamingTraceWriter {
414414
self.events.append(events);
415415
}
416416

417-
fn finish_writing_trace_metadata(&self, path: &Path) -> Result<(), Box<dyn Error>> {
418-
let trace_metadata = TraceMetadata {
419-
program: self.program.clone(),
420-
args: self.args.clone(),
421-
workdir: self.workdir.clone(),
422-
};
423-
let json = serde_json::to_string(&trace_metadata)?;
424-
fs::write(path, json)?;
425-
Ok(())
417+
fn finish_writing_trace_metadata(&self) -> Result<(), Box<dyn Error>> {
418+
if let Some(path) = &self.trace_metadata_path {
419+
let trace_metadata = TraceMetadata {
420+
program: self.program.clone(),
421+
args: self.args.clone(),
422+
workdir: self.workdir.clone(),
423+
};
424+
let json = serde_json::to_string(&trace_metadata)?;
425+
fs::write(path, json)?;
426+
Ok(())
427+
} else {
428+
panic!("finish_writing_trace_metadata() called without previous call to begin_writing_trace_metadata()");
429+
}
426430
}
427431

428432
fn finish_writing_trace_events(&self) -> Result<(), Box<dyn Error>> {

0 commit comments

Comments
 (0)