summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Schiffer2024-08-29 18:24:02 +0000
committerMatthias Schiffer2024-08-29 19:07:48 +0000
commit5773538c907610ebfd1ea13701383e511b7fd00b (patch)
tree1f9fa82cd2ca339c5b8486c55218fa1a78c3c48e
parentc4c43c64aa6c5ba44322ddefa106b9e707b64781 (diff)
downloadopenwrt-5773538c907610ebfd1ea13701383e511b7fd00b.tar.gz
base-files: fix merge of passwd/shadow/group lines with trailing colons
Empty trailing fields get lost when the lines are split and merged again at colons, resulting in unparsable entries. Only use the split fields for matching against the other file, but emit the original line unchanged to fix the issue. Fixes: de7ca7dafadf ("base-files: merge /etc/passwd et al at sysupgrade config restore") Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> (cherry picked from commit 9bbaa6f2c0419739fb85d48d0f527cb1622946ee)
-rw-r--r--package/base-files/files/lib/preinit/80_mount_root2
1 files changed, 1 insertions, 1 deletions
diff --git a/package/base-files/files/lib/preinit/80_mount_root b/package/base-files/files/lib/preinit/80_mount_root
index c3816c2cbf..ccfc481285 100644
--- a/package/base-files/files/lib/preinit/80_mount_root
+++ b/package/base-files/files/lib/preinit/80_mount_root
@@ -9,7 +9,7 @@ missing_lines() {
IFS=":"
while read line; do
set -- $line
- grep -q "^$1:" "$file2" || echo "$*"
+ grep -q "^$1:" "$file2" || echo "$line"
done < "$file1"
IFS="$oIFS"
}