libbb/parse_config.c: fix small buglet (by Vladimir)
This commit is contained in:
parent
a34f1ed737
commit
9b366f4136
@ -199,7 +199,8 @@ int FAST_FUNC config_read(parser_t *parser, char **tokens, unsigned flags, const
|
||||
} else {
|
||||
// vanilla token. cut the line at the first delim
|
||||
q = line + strcspn(line, delims);
|
||||
*q++ = '\0';
|
||||
if (*q) // watch out: do not step past the line end!
|
||||
*q++ = '\0';
|
||||
}
|
||||
// pin token
|
||||
if ((flags & (PARSE_DONT_REDUCE|PARSE_DONT_TRIM)) || *line) {
|
||||
@ -207,6 +208,7 @@ int FAST_FUNC config_read(parser_t *parser, char **tokens, unsigned flags, const
|
||||
tokens[ii++] = line;
|
||||
}
|
||||
line = q;
|
||||
//bb_info_msg("A[%s]", line);
|
||||
}
|
||||
|
||||
if (ii < mintokens)
|
||||
|
@ -23,7 +23,7 @@ testing "notrim" \
|
||||
"-" \
|
||||
" sda 0:0 644 @echo @echo TEST \n"
|
||||
|
||||
FILE=__parse.fstab
|
||||
FILE=__parse
|
||||
cat >$FILE <<EOF
|
||||
#
|
||||
# Device Point System Options
|
||||
@ -59,6 +59,47 @@ testing "polluted fstab" \
|
||||
"`cat $FILE.res`\n" \
|
||||
"" \
|
||||
""
|
||||
cp ../examples/inittab $FILE
|
||||
cat >$FILE.res <<EOF
|
||||
[][][sysinit][/etc/init.d/rcS]
|
||||
[][][askfirst][-/bin/sh]
|
||||
[tty2][][askfirst][-/bin/sh]
|
||||
[tty3][][askfirst][-/bin/sh]
|
||||
[tty4][][askfirst][-/bin/sh]
|
||||
[tty4][][respawn][/sbin/getty 38400 tty5]
|
||||
[tty5][][respawn][/sbin/getty 38400 tty6]
|
||||
[][][restart][/sbin/init]
|
||||
[][][ctrlaltdel][/sbin/reboot]
|
||||
[][][shutdown][/bin/umount -a -r]
|
||||
[][][shutdown][/sbin/swapoff -a]
|
||||
EOF
|
||||
|
||||
testing "inittab from examples" \
|
||||
"parse -n 4 -m 4 -f $(($GREEDY+$NO_TRIM)) -d'#:' $FILE" \
|
||||
"`cat $FILE.res`\n" \
|
||||
"" \
|
||||
""
|
||||
|
||||
cp ../examples/udhcp/udhcpd.conf $FILE
|
||||
cat >$FILE.res <<EOF
|
||||
[start][192.168.0.20]
|
||||
[end][192.168.0.254]
|
||||
[interface][eth0]
|
||||
[opt][dns][192.168.10.2][192.168.10.10]
|
||||
[option][subnet][255.255.255.0]
|
||||
[opt][router][192.168.10.2]
|
||||
[opt][wins][192.168.10.10]
|
||||
[option][dns][129.219.13.81]
|
||||
[option][domain][local]
|
||||
[option][lease][864000]
|
||||
EOF
|
||||
|
||||
testing "udhcpd.conf from examples" \
|
||||
"parse -n 127 $FILE" \
|
||||
"`cat $FILE.res`\n" \
|
||||
"" \
|
||||
""
|
||||
|
||||
rm -f $FILE $FILE.res
|
||||
|
||||
exit $FAILCOUNT
|
||||
|
Loading…
Reference in New Issue
Block a user