File git-10-43091e644ff54997468a215b891dcaa75173f133.patch of Package aaa_base.24604
commit 43091e644ff54997468a215b891dcaa75173f133
Author: Trucido <leetminiwheat@gmail.com>
Date: Thu May 10 01:22:21 2018 -0400
fix string test to arithmetic test in /etc/profile.d/wsl.sh
= test operator compares literal string "0000" whereas -eq compares integer value which works with shells that truncate the umask (such as zsh which is sometimes set to 000 instead of 022). This is the least invasive change I could think of that solves this issue, since it will match 0, 00, 000, and 0000.
Also, the wsl.csh should probably also be changed to use (`umask` <= 0) or equivalent, but csh seems to strip all leading zeros anyways so is not needed.
diff --git a/files/etc/profile.d/wsl.sh b/files/etc/profile.d/wsl.sh
index 13bff3a..0503a18 100644
--- a/files/etc/profile.d/wsl.sh
+++ b/files/etc/profile.d/wsl.sh
@@ -7,7 +7,7 @@ if test -n "$IS_WSL" ; then
if test -n "$ORIG_PATH" ; then
PATH=$ORIG_PATH:$PATH
fi
- if test $(umask) = 0000; then
+ if test $(umask) -eq 0; then
UMASK_LOGIN_DEFS=$(sed -ne 's/^UMASK[[:space:]]*//p' /etc/login.defs)
test "$UMASK_LOGIN_DEFS" && umask "$UMASK_LOGIN_DEFS"
unset UMASK_LOGIN_DEFS