Przeglądaj źródła

base-files: fix offset conversion on caldata_patch_data()

`$(( ))` will convert uninitialized variable to "0". If we want to
use "-n" to check the string length, it's necessary to make sure the
converted variable is not empty.

Fixes: 652a6677d5fa ("base-files: Add new functions for ath11k caldata")
Fixes: https://github.com/openwrt/openwrt/issues/17818
Signed-off-by: Shiji Yang <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/17892
Signed-off-by: Hauke Mehrtens <[email protected]>
Shiji Yang 10 miesięcy temu
rodzic
commit
094b6f593f

+ 2 - 2
package/base-files/files/lib/functions/caldata.sh

@@ -125,8 +125,8 @@ caldata_valid() {
 caldata_patch_data() {
 	local data=$1
 	local data_count=$((${#1} / 2))
-	local data_offset=$(($2))
-	local chksum_offset=$(($3))
+	[ -n "$2" ] && local data_offset=$(($2))
+	[ -n "$3" ] && local chksum_offset=$(($3))
 	local target=$4
 	local fw_data
 	local fw_chksum