Add check for non-existent buffer

This commit is contained in:
Jcodefox 2023-12-01 09:48:57 -05:00
parent 15515e6643
commit cb66c07a5f
2 changed files with 17 additions and 13 deletions

View file

@ -77,20 +77,23 @@ pub fn handler(vm: &mut Vm) {
buffer_id => {
let mut buffs = IPC_BUFFERS.lock();
let mut buff = buffs.get_mut(&buffer_id).unwrap();
match buffs.get_mut(&buffer_id) {
Some(buff) => {
let mut msg_vec = vec![];
let mut msg_vec = vec![];
for x in 0..(length as isize) {
let xyz = mem_addr as *const u8;
let value = unsafe { xyz.offset(x).read() };
msg_vec.push(value);
for x in 0..(length as isize) {
let xyz = mem_addr as *const u8;
let value = unsafe { xyz.offset(x).read() };
msg_vec.push(value);
}
buff.push(msg_vec.clone());
info!(
"Message {:?} has been sent to Buffer({})",
msg_vec, buffer_id
);
}
None => log::error!("Access of non-existent buffer")
}
buff.push(msg_vec.clone());
info!(
"Message {:?} has been sent to Buffer({})",
msg_vec, buffer_id
);
drop(buffs);
}
}

View file

@ -8,6 +8,7 @@ fn main(){
std::Trace("Trace Deez");
std::ipc_send(2, 0, 0);
std::ipc_send(3, 0, 0);
tx();
}