]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Fix in pakfire functions.sh
authorJonatan Schlag <jonatan.schlag@ipfire.org>
Fri, 10 Jun 2016 08:13:41 +0000 (10:13 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 16 Jun 2016 08:33:26 +0000 (09:33 +0100)
The if statement in line 89 and 99 are useless with the -e
conditional expression because it returns true if the path ist a
regular file or a directory.
So "/etc/init.d/ " returns true and "/etc/init.d/avahi" return also true,
but the statement should return only true if we have a regular file.
So -f if the right conditional expression, and we only try to execute
the init script if the path "/etc/init.d/${1}" points to a regular file.

Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/lib/functions.sh

index 3f7dbff55f286102528ddfc36ed4d325665a3f4e..375169760ece68f4481ece3e2032ee987907e60d 100644 (file)
@@ -86,7 +86,7 @@ start_service() {
                esac
        done
 
-       if [ -e "/etc/init.d/${1}" ]; then
+       if [ -f "/etc/init.d/${1}" ]; then
            if [ -n "${BACKGROUND}" ]; then
                                (sleep ${DELAY} && /etc/init.d/${1} start) &
                        else
@@ -96,7 +96,7 @@ start_service() {
 }
 
 stop_service() {
-       if [ -e "/etc/init.d/${1}" ]; then
+       if [ -f "/etc/init.d/${1}" ]; then
                /etc/init.d/${1} stop
        fi
 }