[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#219765: Languagechooser 1.03 dies on mipsel



On Tue, Nov 11, 2003 at 10:25:31PM +0100, Karsten Merker wrote:
> They have no "real" function, in fact they are logically "wrong" here,
> but they cause the shell to take an additional redirection which does
> not trigger the shell crash that happens without them.

It's not a crash or a segfault or anything like that; the shell is 'set
-e' and therefore exits at the first command which returns a non-zero
exit status. The old code was certainly wrong, but the new code ought to
work, as the shell is not supposed to exit under -e when the command
returning non-zero is guarded by an 'if'. It would seem that the shell
doesn't handle pipelines in if statements properly under -e.

Pending a fix to the shell, I would suggest surrounding the 'if' block
with 'set +e' and 'set -e', which ought to fix the problem but makes it
more obvious that it's there exactly and only to work around a shell
bug.

Cheers,

-- 
Colin Watson                                  [cjwatson@flatline.org.uk]



Reply to: