Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > 5c1bb304a26349fad0d8eaf2d0262d83 > files > 19

dracut-025-8.mga3.src.rpm

From dbcbb9c33425902d9e2381e9574e09cd5d527589 Mon Sep 17 00:00:00 2001
From: Colin Guthrie <colin@mageia.org>
Date: Sun, 24 Feb 2013 19:48:57 +0000
Subject: [PATCH] dracut-functions.sh: Make sure to install full path PROGRAM=
 binaries in udev rules.

---
 dracut-functions.sh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dracut-functions.sh b/dracut-functions.sh
index a2f366c..a45be64 100755
--- a/dracut-functions.sh
+++ b/dracut-functions.sh
@@ -868,7 +868,9 @@ inst_rule_programs() {
     if grep -qE 'PROGRAM==?"[^ "]+' "$1"; then
         for _prog in $(grep -E 'PROGRAM==?"[^ "]+' "$1" | sed -r 's/.*PROGRAM==?"([^ "]+).*/\1/'); do
             _bin=""
-            if [ -x ${udevdir}/$_prog ]; then
+            if [ "/" = "${_prog::1}" -a -x $_prog ]; then
+                _bin=$_prog
+            elif [ -x ${udevdir}/$_prog ]; then
                 _bin=${udevdir}/$_prog
             elif [[ "${_prog/\$\{/}" != "$_prog" ]]; then
                 _bin=$(find_binary "$_prog") || {
@@ -883,7 +885,9 @@ inst_rule_programs() {
     if grep -qE 'RUN[+=]=?"[^ "]+' "$1"; then
         for _prog in $(grep -E 'RUN[+=]=?"[^ "]+' "$1" | sed -r 's/.*RUN[+=]=?"([^ "]+).*/\1/'); do
             _bin=""
-            if [ -x ${udevdir}/$_prog ]; then
+            if [ "/" = "${_prog::1}" -a -x $_prog ]; then
+                _bin=$_prog
+            elif [ -x ${udevdir}/$_prog ]; then
                 _bin=${udevdir}/$_prog
             elif [[ "${_prog/\$\{/}" != "$_prog" ]]; then
                 _bin=$(find_binary "$_prog") || {
-- 
1.8.1.3