Skip to content

Commit 4e779db

Browse files
Extension of PR: #590 and #610
Extension of PR: #590 and #610 Fix settings values that contain an = character being cut off when MerlinAU reads them back... For example, foo=bar@example.com would previously be read as foo.
1 parent 0ef0824 commit 4e779db

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

‎MerlinAU.sh‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1669,7 +1669,7 @@ Get_Custom_Setting()
16691669
"FW_New_Update_EMail_CC_Name" | \
16701670
"FW_New_Update_EMail_CC_Address")
16711671
grep -q "^${setting_type}=" "$CONFIG_FILE" && \
1672-
setting_value="$(grep "^${setting_type}=" "$CONFIG_FILE" | awk -F '=' '{print $2}' | sed "s/['\"]//g")"
1672+
setting_value="$(grep "^${setting_type}=" "$CONFIG_FILE" | cut -f2- -d'=' | sed "s/['\"]//g")"
16731673
;;
16741674
*)
16751675
setting_value="**ERROR**"
@@ -1740,7 +1740,7 @@ Update_Custom_Settings()
17401740
then
17411741
if grep -q "^${setting_type}=" "$CONFIG_FILE"
17421742
then
1743-
oldVal="$(grep "^${setting_type}=" "$CONFIG_FILE" | awk -F '=' '{print $2}' | sed "s/['\"]//g")"
1743+
oldVal="$(grep "^${setting_type}=" "$CONFIG_FILE" | cut -f2- -d'=' | sed "s/['\"]//g")"
17441744
if [ -z "$oldVal" ] || [ "$oldVal" != "$setting_value" ]
17451745
then
17461746
fixedVal="$(printf '%s' "$setting_value" | sed 's/[\/&\\]/\\&/g')"
@@ -1798,7 +1798,7 @@ Update_Custom_Settings()
17981798
# Generic handling for arbitrary settings #
17991799
if grep -q "^${setting_type}=" "$CONFIG_FILE"
18001800
then
1801-
oldVal="$(grep "^${setting_type}=" "$CONFIG_FILE" | awk -F '=' '{print $2}' | sed "s/['\"]//g")"
1801+
oldVal="$(grep "^${setting_type}=" "$CONFIG_FILE" | cut -f2- -d'=' | sed "s/['\"]//g")"
18021802
if [ -z "$oldVal" ] || [ "$oldVal" != "$setting_value" ]
18031803
then
18041804
fixedVal="$(printf '%s' "$setting_value" | sed 's/[\/&\\]/\\&/g')"
@@ -1846,7 +1846,7 @@ _GetAllNodeSettings_()
18461846
if [ -n "$matched_lines" ]
18471847
then
18481848
# Extract the value from the first matched line #
1849-
setting_value="$(echo "$matched_lines" | head -n 1 | awk -F '=' '{print $2}' | tr -d '"')"
1849+
setting_value="$(echo "$matched_lines" | head -n 1 | cut -f2- -d'=' | tr -d '"')"
18501850
fi
18511851
fi
18521852
echo "$setting_value"

0 commit comments

Comments
 (0)