From ef02e3c476ce76a1205744cdd396ac1eda1013d6 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 24 Jan 2020 17:23:07 +0000 Subject: [PATCH] Fix locale/tst-locale-locpath cross-testing when sshd sets LANG. The locale/tst-locale-locpath test unsets LANG, then runs a test with test_wrapper_env and expects LANG to remain unset for that test. This does not work for cross-testing with cross-test-ssh.sh when sshd (on the system specified as an argument to cross-test-ssh.sh) is configured to have a default LANG setting. The general design used in cross testing, after commit 8540f6d2a74fe9d67440535ebbcfa252180a3172 ("Don't require test wrappers to preserve environment variables, use more consistent environment.", 6 June 2014), is that environment settings required by tests should be passed explicitly to $(test-wrapper-env). This patch changes tst-locale-locpath.sh to pass an explicit LANG= rather than expecting "unset LANG" to be in effect for the program run under test_wrapper_env. Note that this does slightly change the environment in which the test is run natively (empty LANG instead of unset LANG) but that difference does not appear relevant to what it is trying to test. Tested for Arm that this fixes the failure seen for that test in cross-testing. --- locale/tst-locale-locpath.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/locale/tst-locale-locpath.sh b/locale/tst-locale-locpath.sh index bafdf91..f37d452 100644 --- a/locale/tst-locale-locpath.sh +++ b/locale/tst-locale-locpath.sh @@ -34,10 +34,8 @@ trap cleanup 0 rm -rf "$testroot" mkdir -p $testroot -unset LANG - ${test_wrapper_env} \ -${run_program_env} LC_ALL=invalid-locale LOCPATH=does-not-exist \ +${run_program_env} LANG= LC_ALL=invalid-locale LOCPATH=does-not-exist \ ${common_objpfx}elf/ld.so --library-path "$LIBPATH" \ "${common_objpfx}locale/locale" \ > "$testroot/stdout" 2> "$testroot/stderr" -- 2.7.4