"free" => {
let ptr = self.read_scalar(args[0])?.not_undef()?.erase_tag(); // raw ptr operation, no tag
- if !ptr.is_null() {
+ if !ptr.is_null_ptr(&self) {
- self.memory.deallocate(
+ self.memory_mut().deallocate(
ptr.to_ptr()?.with_default_tag(),
None,
MiriMemoryKind::C.into(),
let mut success = None;
{
let name_ptr = self.read_scalar(args[0])?.not_undef()?.erase_tag(); // raw ptr operation
- if !name_ptr.is_null() {
+ if !name_ptr.is_null_ptr(&self) {
- let name = self.memory.read_c_str(name_ptr.to_ptr()?.with_default_tag())?;
+ let name = self.memory().read_c_str(name_ptr.to_ptr()?
+ .with_default_tag())?.to_owned();
if !name.is_empty() && !name.contains(&b'=') {
- success = Some(self.machine.env_vars.remove(name));
+ success = Some(self.machine.env_vars.remove(&name));
}
}
}
{
let name_ptr = self.read_scalar(args[0])?.not_undef()?.erase_tag(); // raw ptr operation
let value_ptr = self.read_scalar(args[1])?.to_ptr()?.erase_tag(); // raw ptr operation
- let value = self.memory.read_c_str(value_ptr.with_default_tag())?;
+ let value = self.memory().read_c_str(value_ptr.with_default_tag())?;
- if !name_ptr.is_null() {
+ if !name_ptr.is_null_ptr(&self) {
- let name = self.memory.read_c_str(name_ptr.to_ptr()?.with_default_tag())?;
+ let name = self.memory().read_c_str(name_ptr.to_ptr()?.with_default_tag())?;
if !name.is_empty() && !name.contains(&b'=') {
new = Some((name.to_owned(), value.to_owned()));
}