mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-14 02:49:40 +00:00
std: Directly call unsafe {un,}setenv in env
This commit is contained in:
parent
ce35265105
commit
83a0fe5396
@ -9,7 +9,6 @@
|
||||
//! and those without will return a [`String`].
|
||||
|
||||
#![stable(feature = "env", since = "1.0.0")]
|
||||
#![allow(unsafe_op_in_unsafe_fn)]
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests;
|
||||
@ -367,11 +366,8 @@ impl Error for VarError {
|
||||
#[rustc_deprecated_safe_2024]
|
||||
#[stable(feature = "env", since = "1.0.0")]
|
||||
pub unsafe fn set_var<K: AsRef<OsStr>, V: AsRef<OsStr>>(key: K, value: V) {
|
||||
_set_var(key.as_ref(), value.as_ref())
|
||||
}
|
||||
|
||||
unsafe fn _set_var(key: &OsStr, value: &OsStr) {
|
||||
os_imp::setenv(key, value).unwrap_or_else(|e| {
|
||||
let (key, value) = (key.as_ref(), value.as_ref());
|
||||
unsafe { os_imp::setenv(key, value) }.unwrap_or_else(|e| {
|
||||
panic!("failed to set environment variable `{key:?}` to `{value:?}`: {e}")
|
||||
})
|
||||
}
|
||||
@ -434,11 +430,8 @@ unsafe fn _set_var(key: &OsStr, value: &OsStr) {
|
||||
#[rustc_deprecated_safe_2024]
|
||||
#[stable(feature = "env", since = "1.0.0")]
|
||||
pub unsafe fn remove_var<K: AsRef<OsStr>>(key: K) {
|
||||
_remove_var(key.as_ref())
|
||||
}
|
||||
|
||||
unsafe fn _remove_var(key: &OsStr) {
|
||||
os_imp::unsetenv(key)
|
||||
let key = key.as_ref();
|
||||
unsafe { os_imp::unsetenv(key) }
|
||||
.unwrap_or_else(|e| panic!("failed to remove environment variable `{key:?}`: {e}"))
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user