From d0112d76e93f85ede76decb71c1295fe1fba2bc2 Mon Sep 17 00:00:00 2001 From: Ali Mohammad Pur Date: Tue, 21 Mar 2023 04:03:01 +0330 Subject: [PATCH] Shell: Resolve nonexistent string env variables to the empty string We did this for lists, but not for strings. --- Userland/Shell/AST.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Userland/Shell/AST.cpp b/Userland/Shell/AST.cpp index 4ba3f98700..cb90595472 100644 --- a/Userland/Shell/AST.cpp +++ b/Userland/Shell/AST.cpp @@ -3802,7 +3802,10 @@ ErrorOr SimpleVariableValue::resolve_as_string(RefPtr shell) return resolve_slices(shell, TRY(value->resolve_as_string(shell)), m_slices); auto name = m_name.to_deprecated_string(); - char* env_value = getenv(name.characters()); + char const* env_value = getenv(name.characters()); + if (!env_value) + env_value = ""; + return resolve_slices(shell, TRY(String::from_utf8(StringView { env_value, strlen(env_value) })), m_slices); }