busybox/shell
Eric Andersen 12de6cf0d7 Michael Leibow, MichaelLe at belkin.com writes:
A question was posted a month ago by Mark Alamo to see if others had
problems with sourcing subscripts within msh.  We asked his firm to fix the
msh.c bug he described because we didn't have enough time to do it
ourselves.

When msh.c is executing a compound statement and there is a . command to
source another script file, msh.c will not execute the subscript until it's
completed executing the rest of the compound statement.

His example was this:

Echo "Start" ; . ./subA; echo "mid" ; . ./subB ; echo "end"

subA and subB execute AFTER end is printed in reverse order.  The same is
true if the sourced files are inside an if else fi, case esac, or any
compound statement.

Attached is a patch to msh.c.  It fixes the problem.  Cd to the root of your
busybox tree and execute "patch -p1 < msh.c.patch"

Unfortunately, I won't have more time to work on this so I hope that there
aren't any problems!

Michael Leibow
Senior Software Engineer

Belkin Corporation
2004-08-04 19:19:10 +00:00
..
ash.c Paul Whittaker writes: 2004-07-24 12:44:13 +00:00
cmdedit.c Larry Doolittle writes: 2004-04-14 17:51:38 +00:00
cmdedit.h Vodz last_patch_122, Check $PATH at runtime to fix tab completion 2004-01-14 09:34:51 +00:00
Config.in Patch from Bastian Blank: 2004-06-22 08:29:45 +00:00
hush.c Larry Doolittle writes: 2004-04-14 17:51:38 +00:00
lash.c Jamie Guinan writes: 2004-04-12 17:59:24 +00:00
Makefile Remove trailing whitespace. Update copyright to include 2004. 2004-03-15 08:29:22 +00:00
Makefile.in Remove trailing whitespace. Update copyright to include 2004. 2004-03-15 08:29:22 +00:00
msh.c Michael Leibow, MichaelLe at belkin.com writes: 2004-08-04 19:19:10 +00:00