]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
dracut-functions.sh: fix inst_rule_programs()
authorHarald Hoyer <harald@redhat.com>
Thu, 7 Mar 2013 13:27:49 +0000 (14:27 +0100)
committerHarald Hoyer <harald@redhat.com>
Thu, 7 Mar 2013 14:01:47 +0000 (15:01 +0100)
Logic for the $env{.*} check was reversed and env was missing.

Thanks Colin Guthrie!

dracut-functions.sh

index 59a8c6339eff79c9068cd63002a931fc4025912e..53ee9f75becb52ca0b1d1dc13abaa7eeaf542b3d 100755 (executable)
@@ -878,7 +878,7 @@ inst_rule_programs() {
             _bin=""
             if [ -x ${udevdir}/$_prog ]; then
                 _bin=${udevdir}/$_prog
-            elif [[ "${_prog/\$\{/}" != "$_prog" ]]; then
+            elif [[ "${_prog/\$env\{/}" == "$_prog" ]]; then
                 _bin=$(find_binary "$_prog") || {
                     dinfo "Skipping program $_prog using in udev rule ${1##*/} as it cannot be found"
                     continue;
@@ -893,7 +893,7 @@ inst_rule_programs() {
             _bin=""
             if [ -x ${udevdir}/$_prog ]; then
                 _bin=${udevdir}/$_prog
-            elif [[ "${_prog/\$\{/}" != "$_prog" ]]; then
+            elif [[ "${_prog/\$env\{/}" == "$_prog" ]] && [[ "${_prog}" != "/sbin/initqueue" ]]; then
                 _bin=$(find_binary "$_prog") || {
                     dinfo "Skipping program $_prog using in udev rule ${1##*/} as it cannot be found"
                     continue;
@@ -908,7 +908,7 @@ inst_rule_programs() {
             _bin=""
             if [ -x ${udevdir}/$_prog ]; then
                 _bin=${udevdir}/$_prog
-            elif [[ "${_prog/\$\{/}" != "$_prog" ]]; then
+            elif [[ "${_prog/\$env\{/}" == "$_prog" ]]; then
                 _bin=$(find_binary "$_prog") || {
                     dinfo "Skipping program $_prog using in udev rule ${1##*/} as it cannot be found"
                     continue;