Skip to content

Commit

Permalink
functions.sh: fix default_postinst function
Browse files Browse the repository at this point in the history
When we run "opkg install" on a package that installs an uci-defaults
script, functions.sh will fail to evaluate that script in its
default_postinst function.

This happens because there is no "./" present and it searches for the
file in paths specified by the PATH variable. This would work on bash,
but it will not work on ash and some other shells like sh, zsh. This
applys to the ". filename" directive used in this case.

This patch will make the path relative to the /etc/uci-defaults
directory.

Fixes: FS#1021

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
  • Loading branch information
Marko Ratkaj authored and mkresin committed Nov 8, 2017
1 parent 6b6578f commit a0ef1c4
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion package/base-files/files/lib/functions.sh
Expand Up @@ -240,7 +240,7 @@ default_postinst() {
[ -d /tmp/.uci ] || mkdir -p /tmp/.uci
for i in $(sed -ne 's!^/etc/uci-defaults/!!p' "/usr/lib/opkg/info/${pkgname}.list"); do (
cd /etc/uci-defaults
[ -f "$i" ] && . "$i" && rm -f "$i"
[ -f "$i" ] && . ./"$i" && rm -f "$i"
) done
uci commit
fi
Expand Down

0 comments on commit a0ef1c4

Please sign in to comment.