From: Felix Fietkau Date: Sun, 3 Jan 2016 11:09:45 +0000 (+0000) Subject: ar71xx: another fix to wndr3700_board_detect X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fwigyori.git;a=commitdiff_plain;h=0da9da0d3348ffbe0f6f90da6ea4dd7d4959bacf ar71xx: another fix to wndr3700_board_detect My last bugfix (r47538) introduced a new bug in wndr3700_board_detect (again...). Assigning the result of ar71xx_get_mtd_offset_size_format to the model variable before stripping of garbage using awk will cause all NUL bytes to be removed before awk is applied, leading to model strings like "NETGEAR WNDRMACv2NETGEAR", where a NUL byte after the v2 is supposed to terminate the string. Fix by calling ar71xx_get_mtd_offset_size_format twice, once piping to awk directly. Signed-off-by: Matthias Schiffer SVN-Revision: 48075 --- diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh index 61dcbbadd2..678482eb15 100755 --- a/target/linux/ar71xx/base-files/lib/ar71xx.sh +++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh @@ -39,7 +39,7 @@ wndr3700_board_detect() { "33373031") model="$(ar71xx_get_mtd_offset_size_format art 41 32 %c)" # Use awk to remove everything unprintable - model_stripped="$(echo -n "$model" | LC_CTYPE=C awk -v 'FS=[^[:print:]]' '{print $1; exit}')" + model_stripped="$(ar71xx_get_mtd_offset_size_format art 41 32 %c | LC_CTYPE=C awk -v 'FS=[^[:print:]]' '{print $1; exit}')" case $model in $'\xff'*) if [ "${model:24:1}" = 'N' ]; then