diff options
Diffstat (limited to 'meta-initramfs/recipes-devtools/dracut/dracut/0001-set-viriable-_drv-not-local.patch')
-rw-r--r-- | meta-initramfs/recipes-devtools/dracut/dracut/0001-set-viriable-_drv-not-local.patch | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/meta-initramfs/recipes-devtools/dracut/dracut/0001-set-viriable-_drv-not-local.patch b/meta-initramfs/recipes-devtools/dracut/dracut/0001-set-viriable-_drv-not-local.patch deleted file mode 100644 index 13d2cfa877..0000000000 --- a/meta-initramfs/recipes-devtools/dracut/dracut/0001-set-viriable-_drv-not-local.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 6e0da103effe64832eea52fad5c44a328f7141b7 Mon Sep 17 00:00:00 2001 -From: Hongxu Jia <hongxu.jia@windriver.com> -Date: Thu, 20 Jun 2019 17:31:11 +0800 -Subject: [PATCH] set viriable _drv not local - -If shebang is set to /bin/sh and /bin/sh is a symlink to /bin/bash, -bash turn on posix mode. - -Since bash is upgraded to 5.0, it follows 'IEEE 1003.2 POSIX Shell -Standard', to implement 'functions do not have local traps or options, -and it is not possible to define local variables' - -For more detail, see variables.c:push_posix_temp_var in the following commit -http://git.savannah.gnu.org/cgit/bash.git/commit/?id=d233b485e83c3a784b803fb894280773f16f2deb - -The IEEE 1003.2 POSIX Shell Standard: -https://www.cs.ait.ac.th/~on/O/oreilly/unix/ksh/appa_02.htm - -While /bin/sh points to bash 5.0, it caused the following issue: - -$ cat <<ENDOF>case.sh -fsck_drv_com(){ - echo "issuing \$_drv" -} - -fsck_able() { - _drv="_drv=e2fsck fsck_drv_com" -} - -fsck_single() { - local _drv - fsck_able - eval "\$_drv" -} -fsck_single -ENDOF -$ chmod a+x case.sh - -Unexpected: -$ ./cash.sh -issuing _drv=e2fsck fsck_drv_com - -Set viriable _drv not local, get expected result: -$ ./case.sh -issuing e2fsck - -Upstream-Status: Submitted [https://github.com/dracutdevs/dracut/pull/587] - -Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> ---- - modules.d/99fs-lib/fs-lib.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/modules.d/99fs-lib/fs-lib.sh b/modules.d/99fs-lib/fs-lib.sh -index d39ca1b..60877ee 100755 ---- a/modules.d/99fs-lib/fs-lib.sh -+++ b/modules.d/99fs-lib/fs-lib.sh -@@ -142,7 +142,7 @@ fsck_single() { - local _fs="${2:-auto}" - local _fsopts="$3" - local _fop="$4" -- local _drv -+ _drv="" - - [ $# -lt 2 ] && return 255 - # if UUID= marks more than one device, take only the first one --- -2.7.4 - |