summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2012-04-29 14:11:38 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2012-04-30 13:08:54 +0200
commit1aad6d033a83c025a6e3b279ac5b145c7a2efffd (patch)
tree887bc81a8a1b420c6f543cb7bb1d22841c35ca36 /fs
parent37e77d3cfec63f46e4c04847c6181dae2c1b7ea0 (diff)
downloadbarebox-1aad6d033a83c025a6e3b279ac5b145c7a2efffd.tar.gz
barebox-1aad6d033a83c025a6e3b279ac5b145c7a2efffd.tar.xz
hush: remove quotes at end of processing
hush removes the quotes from strings too early. This leads to some bugs. When hush executes echo "hello sascha" it correctly results in: argv[0] = "echo" argv[1] = "hello sascha" However, the following behaves incorrect: a="hello sascha" echo "$a" results in: argv[0] = "echo" argv[1] = "hello" argv[2] = "sascha" This is because hush removes the quotes and inserts variable values in a single loop, so echo "$a" becomes: echo hello sascha after the loop. Instead, keep the quotes until all variables are inserted and remove them at the end. This also fixes that echo \" resulted in \" instead of ". Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions