Make memory watching work before sim is started

This commit is contained in:
2026-11-01 21:33:04 -05:00
parent 833214b759
commit 3cf95772f5
2 changed files with 12 additions and 5 deletions
+5 -4
View File
@@ -518,11 +518,12 @@ impl Emulator {
let Some(region) = region.upgrade() else {
return false;
};
let Some(sim) = self.sims.get_mut(range.sim.to_index()) else {
return false;
};
self.buffer.clear();
sim.read_memory(range.start, range.length, &mut self.buffer);
if let Some(sim) = self.sims.get_mut(range.sim.to_index()) {
sim.read_memory(range.start, range.length, &mut self.buffer);
} else {
self.buffer.extend(std::iter::repeat_n(0, range.length));
}
region.update(&self.buffer);
true
});
+7 -1
View File
@@ -142,7 +142,6 @@ impl BufferPool {
}
}
#[derive(Debug)]
struct Buffer {
data: Mutex<Vec<u8>>,
id: AtomicU64,
@@ -155,3 +154,10 @@ impl Buffer {
}
}
}
impl std::fmt::Debug for Buffer {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.debug_struct("Buffer")
.field("id", &self.id)
.finish_non_exhaustive()
}
}