mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 00:20:08 +00:00
initramfs-framework: support kernel cmdline with double quotes
It avoids init to crash when kernel cmdline contains a string with spaces inside, like that: dyndbg="file drivers/usb/core/hub.c +pltf" (From OE-Core rev: 88b8b94bd2d052bca29d27bd5cd00eddb0f5999d) Signed-off-by: Christophe Guibout <christophe.guibout@st.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
33efd93517
commit
909a9f5e8e
@@ -88,12 +88,25 @@ fi
|
||||
|
||||
# populate bootparam environment
|
||||
for p in `cat /proc/cmdline`; do
|
||||
if [ -n "$quoted" ]; then
|
||||
value="$value $p"
|
||||
if [ "`echo $p | sed -e 's/\"$//'`" != "$p" ]; then
|
||||
eval "bootparam_${quoted}=${value}"
|
||||
unset quoted
|
||||
fi
|
||||
continue
|
||||
fi
|
||||
|
||||
opt=`echo $p | cut -d'=' -f1`
|
||||
opt=`echo $opt | sed -e 'y/.-/__/'`
|
||||
if [ "`echo $p | cut -d'=' -f1`" = "$p" ]; then
|
||||
eval "bootparam_${opt}=true"
|
||||
else
|
||||
value="`echo $p | cut -d'=' -f2-`"
|
||||
if [ "`echo $value | sed -e 's/^\"//'`" != "$value" ]; then
|
||||
quoted=${opt}
|
||||
continue
|
||||
fi
|
||||
eval "bootparam_${opt}=\"${value}\""
|
||||
fi
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user