diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-25 03:20:08 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-25 03:33:09 +0900 |
| commit | c65cab710bb3d79db20862c9361d4dbbac8ac5d7 (patch) | |
| tree | b4d192237bbb8dbaa80166f1ffa24703e57243f4 /crates/shirabe/tests/util/ini_helper_test.rs | |
| parent | f73e9ab05f8d94937d2437919199d9d9681c8cde (diff) | |
| download | php-shirabe-c65cab710bb3d79db20862c9361d4dbbac8ac5d7.tar.gz php-shirabe-c65cab710bb3d79db20862c9361d4dbbac8ac5d7.tar.zst php-shirabe-c65cab710bb3d79db20862c9361d4dbbac8ac5d7.zip | |
feat(php-shim): model $_ENV/$_SERVER as OsString snapshots
Rework the environment shim around getenv/putenv on the real environment
and $_ENV/$_SERVER as startup snapshots, all over OsString. Migrate every
caller off the old server()/server_argv() helpers and force the snapshots
in main() before any putenv() runs. Document the porting rules in
docs/dev/env-vars-porting.md.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/util/ini_helper_test.rs')
| -rw-r--r-- | crates/shirabe/tests/util/ini_helper_test.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/crates/shirabe/tests/util/ini_helper_test.rs b/crates/shirabe/tests/util/ini_helper_test.rs index f511d76..d1e2071 100644 --- a/crates/shirabe/tests/util/ini_helper_test.rs +++ b/crates/shirabe/tests/util/ini_helper_test.rs @@ -12,7 +12,8 @@ fn set_up() -> TearDown { // XdebugHandler is a unit struct with no name-registration API, so this // step is a no-op here. // Save current state - let env_original = getenv("COMPOSER_ORIGINAL_INIS"); + let env_original = + getenv("COMPOSER_ORIGINAL_INIS").map(|value| value.to_string_lossy().into_owned()); TearDown { env_original } } @@ -20,7 +21,7 @@ fn set_up() -> TearDown { fn tear_down(env_original: &Option<String>) { // Restore original state if let Some(env_original) = env_original { - putenv(&format!("COMPOSER_ORIGINAL_INIS={env_original}")); + unsafe { putenv("COMPOSER_ORIGINAL_INIS", env_original) }; } else { Platform::clear_env("COMPOSER_ORIGINAL_INIS"); } @@ -38,10 +39,7 @@ impl Drop for TearDown { } fn set_env(paths: &[&str]) { - putenv(&format!( - "COMPOSER_ORIGINAL_INIS={}", - paths.join(PATH_SEPARATOR) - )); + unsafe { putenv("COMPOSER_ORIGINAL_INIS", paths.join(PATH_SEPARATOR)) }; } #[test] |
