From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Sun, 16 Sep 2012 07:20:32 +0200 Subject: [U-Boot] [PATCH] common, hush [BUG]: exit not work in hush shell In-Reply-To: <20120914183131.728A72002E4@gemini.denx.de> References: <1347645856-3326-1-git-send-email-hs@denx.de> <20120914183131.728A72002E4@gemini.denx.de> Message-ID: <505561A0.3060108@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Wolfgang, On 14.09.2012 20:31, Wolfgang Denk wrote: > Dear Heiko Schocher, > > In message<1347645856-3326-1-git-send-email-hs@denx.de> you wrote: >> running the following script in u-boot: >> setenv error 'if true; then >> echo **** ERROR **** >> exit; >> fi' > > I think I once tried to fix this, too. > > See here: > http://article.gmane.org/gmane.comp.boot-loaders.u-boot/94660 > http://article.gmane.org/gmane.comp.boot-loaders.u-boot/94661 > > Later, I rejected both these patches (and several other, unpublished > versions I came up with during testing), because none of these worked I can understand exactly how you feel... I had also several patches... > for all tests really reliable. Do you still have this test somewhere? >> rcode = source (addr, fit_uname); >> + if (rcode == -2) { >> + debug("Hit exit in script\n"); >> + rcode = 0; >> + } > > Hm... Note that "exit" can take an argment, which should be reflected > in the return code - I mean, would it not be wrong to reurn 0 if the > user has "exit 1" in his script? Oh, Ok, this is a killing argument for this patch! > Please make sure to test this extensively. When I was trying to fix a > few similar issues with hush, I quickly gave up because I decided it > would be an easier (and more promising) undertaking to update the whole > hush code to a more recent version of hush. Hmm... Okay, so I have two options: - fix "exit" with arguments - update to a recent version of hush (where is the current code from?) But I have the gut feeling, that the problem is not in the original code, but in the u-boot adaptions, as the code in hush.c has a lot of "#ifndef __U_BOOT__" ... bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany