X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/796420d4282fc8765dd6d0b0cc11507482ef5d35..7e450a1c869a5b227e3c91c4e71049059f1193e6:/package/base-files/files/etc/functions.sh diff --git a/package/base-files/files/etc/functions.sh b/package/base-files/files/etc/functions.sh index 931f4be47..c29ae772a 100755 --- a/package/base-files/files/etc/functions.sh +++ b/package/base-files/files/etc/functions.sh @@ -125,10 +125,13 @@ config_set() { config_foreach() { local function="$1" - local section + local type="$2" + local section cfgtype [ -z "$CONFIG_SECTIONS" ] && return 0 for section in ${CONFIG_SECTIONS}; do + config_get cfgtype "$section" TYPE + [ -n "$type" -a "$cfgtype" != "$type" ] && continue eval "$function \"\$section\"" done } @@ -148,9 +151,11 @@ include() { find_mtd_part() { local PART="$(grep "\"$1\"" /proc/mtd | awk -F: '{print $1}')" + local PREFIX=/dev/mtdblock PART="${PART##mtd}" - echo "${PART:+/dev/mtdblock/$PART}" + [ -d /dev/mtdblock ] && PREFIX=/dev/mtdblock/ + echo "${PART:+$PREFIX$PART}" } strtok() { # { [] ... }